//------------------------------------------------------------------------------ // // Copyright (c) Microsoft Corporation. All rights reserved. // //------------------------------------------------------------------------------ namespace System.Web.UI.Design.MobileControls { using System; using System.Collections; using System.ComponentModel; using System.ComponentModel.Design; using System.Diagnostics; using System.Drawing.Design; using System.Web.UI.MobileControls; using System.Web.UI.WebControls; using System.Runtime.Serialization.Formatters; /// /// /// The editor for Item collections. /// /// [ System.Security.Permissions.SecurityPermission(System.Security.Permissions.SecurityAction.Demand, Flags=System.Security.Permissions.SecurityPermissionFlag.UnmanagedCode) ] [Obsolete("The System.Web.Mobile.dll assembly has been deprecated and should no longer be used. For information about how to develop ASP.NET mobile applications, see http://go.microsoft.com/fwlink/?LinkId=157231.")] internal class ItemCollectionEditor : UITypeEditor { /// /// /// Edits the value specified. /// /// /// /// An that specifies the context of the value to edit. /// /// /// An . /// /// /// The object to edit. /// /// /// /// The updated value. /// /// public override Object EditValue(ITypeDescriptorContext context, IServiceProvider provider, Object value) { IDesignerHost designerHost = (IDesignerHost)context.GetService(typeof(IDesignerHost)); Debug.Assert(designerHost != null, "Did not get DesignerHost service."); Object obj = context.Instance; Debug.Assert(obj is List || obj is SelectionList, "Expected List or SelectionList"); IDesigner designer = designerHost.GetDesigner((IComponent)obj); Debug.Assert(designer != null, "Did not get designer for component"); if (obj is List) { ((ListDesigner)designer).InvokePropertyBuilder(ListComponentEditor.IDX_ITEMS); } else { ((SelectionListDesigner)designer).InvokePropertyBuilder( SelectionListComponentEditor.IDX_ITEMS); } return value; } /// /// /// Gets the edit style. /// /// /// /// An that specifies the associated context. /// /// /// /// A that represents the edit style. /// /// public override UITypeEditorEditStyle GetEditStyle(ITypeDescriptorContext context) { return UITypeEditorEditStyle.Modal; } } }