Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / ndp / fx / src / xsp / System / Web / UI / ControlPropertyNameConverter.cs / 1 / ControlPropertyNameConverter.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI.WebControls { using System.Collections; using System.ComponentModel; using System.ComponentModel.Design; using System.Globalization; using System.Reflection; using System.Web.Util; using System.Security.Permissions; ////// TypeConverter for ControlParameter's PropertyName property. /// [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] [AspNetHostingPermission(SecurityAction.InheritanceDemand, Level=AspNetHostingPermissionLevel.Minimal)] public class ControlPropertyNameConverter : StringConverter { ////// Returns a list of all the propery names for a given control. /// private string[] GetPropertyNames(Control control) { ArrayList array = new ArrayList(); PropertyDescriptorCollection pdc = TypeDescriptor.GetProperties(control.GetType()); foreach (PropertyDescriptor desc in pdc) { array.Add(desc.Name); } array.Sort(Comparer.Default); return (string[])array.ToArray(typeof(string)); } ////// Returns a collection of standard values retrieved from the context specified /// by the specified type descriptor. /// public override StandardValuesCollection GetStandardValues(ITypeDescriptorContext context) { if (context == null) { return null; } // Get ControlID ControlParameter param = (ControlParameter)context.Instance; string controlID = param.ControlID; // Check that we actually have a control ID if (String.IsNullOrEmpty(controlID)) return null; // Get designer host IDesignerHost host = (IDesignerHost)context.GetService(typeof(IDesignerHost)); Debug.Assert(host != null, "Unable to get IDesignerHost in ControlPropertyNameConverter"); if (host == null) return null; // Get control ComponentCollection allComponents = host.Container.Components; Control control = allComponents[controlID] as Control; if (control == null) return null; string[] propertyNames = GetPropertyNames(control); return new StandardValuesCollection(propertyNames); } ////// Gets whether or not the context specified contains exclusive standard values. /// public override bool GetStandardValuesExclusive(ITypeDescriptorContext context) { return false; } ////// Gets whether or not the specified context contains supported standard values. /// public override bool GetStandardValuesSupported(ITypeDescriptorContext context) { return (context != null); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI.WebControls { using System.Collections; using System.ComponentModel; using System.ComponentModel.Design; using System.Globalization; using System.Reflection; using System.Web.Util; using System.Security.Permissions; ////// TypeConverter for ControlParameter's PropertyName property. /// [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] [AspNetHostingPermission(SecurityAction.InheritanceDemand, Level=AspNetHostingPermissionLevel.Minimal)] public class ControlPropertyNameConverter : StringConverter { ////// Returns a list of all the propery names for a given control. /// private string[] GetPropertyNames(Control control) { ArrayList array = new ArrayList(); PropertyDescriptorCollection pdc = TypeDescriptor.GetProperties(control.GetType()); foreach (PropertyDescriptor desc in pdc) { array.Add(desc.Name); } array.Sort(Comparer.Default); return (string[])array.ToArray(typeof(string)); } ////// Returns a collection of standard values retrieved from the context specified /// by the specified type descriptor. /// public override StandardValuesCollection GetStandardValues(ITypeDescriptorContext context) { if (context == null) { return null; } // Get ControlID ControlParameter param = (ControlParameter)context.Instance; string controlID = param.ControlID; // Check that we actually have a control ID if (String.IsNullOrEmpty(controlID)) return null; // Get designer host IDesignerHost host = (IDesignerHost)context.GetService(typeof(IDesignerHost)); Debug.Assert(host != null, "Unable to get IDesignerHost in ControlPropertyNameConverter"); if (host == null) return null; // Get control ComponentCollection allComponents = host.Container.Components; Control control = allComponents[controlID] as Control; if (control == null) return null; string[] propertyNames = GetPropertyNames(control); return new StandardValuesCollection(propertyNames); } ////// Gets whether or not the context specified contains exclusive standard values. /// public override bool GetStandardValuesExclusive(ITypeDescriptorContext context) { return false; } ////// Gets whether or not the specified context contains supported standard values. /// public override bool GetStandardValuesSupported(ITypeDescriptorContext context) { return (context != null); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ImmutableObjectAttribute.cs
- ListViewEditEventArgs.cs
- NumericUpDown.cs
- TextEffectCollection.cs
- __ComObject.cs
- ContentFileHelper.cs
- DataGridViewTextBoxCell.cs
- CancellationHandler.cs
- OleDbPropertySetGuid.cs
- MembershipPasswordException.cs
- RSAPKCS1SignatureFormatter.cs
- XmlQueryRuntime.cs
- StringDictionaryCodeDomSerializer.cs
- UnhandledExceptionEventArgs.cs
- PeerMaintainer.cs
- DetailsViewInsertedEventArgs.cs
- SessionViewState.cs
- XmlIlVisitor.cs
- TokenFactoryBase.cs
- VisualBrush.cs
- PersonalizationProvider.cs
- DesignTimeXamlWriter.cs
- GridViewSortEventArgs.cs
- SchemaAttDef.cs
- OdbcRowUpdatingEvent.cs
- SafeEventHandle.cs
- StrongNameIdentityPermission.cs
- TreeNodeBinding.cs
- GlyphRun.cs
- EntityDesignerUtils.cs
- TreeView.cs
- NTAccount.cs
- AssociationTypeEmitter.cs
- TrustManagerMoreInformation.cs
- WebConfigurationHostFileChange.cs
- ServiceObjectContainer.cs
- controlskin.cs
- PassportAuthentication.cs
- isolationinterop.cs
- X509Logo.cs
- SBCSCodePageEncoding.cs
- Int32Collection.cs
- WsatConfiguration.cs
- CfgRule.cs
- CompositeKey.cs
- BitmapFrameDecode.cs
- BitmapImage.cs
- Selection.cs
- AbandonedMutexException.cs
- XmlParserContext.cs
- Point3DCollectionConverter.cs
- ChtmlLinkAdapter.cs
- ListBindingConverter.cs
- StandardRuntimeEnumValidatorAttribute.cs
- SendMailErrorEventArgs.cs
- StyleModeStack.cs
- FixedSOMFixedBlock.cs
- TypeListConverter.cs
- datacache.cs
- Label.cs
- HttpListenerRequest.cs
- XmlTextReaderImpl.cs
- ErrorHandler.cs
- DataGridTextBoxColumn.cs
- SqlStream.cs
- ArgumentException.cs
- codemethodreferenceexpression.cs
- AnimatedTypeHelpers.cs
- ControlAdapter.cs
- XmlChildNodes.cs
- UrlAuthFailedErrorFormatter.cs
- CommandValueSerializer.cs
- ConcatQueryOperator.cs
- SafeBitVector32.cs
- QueryStringParameter.cs
- PassportIdentity.cs
- HtmlInputText.cs
- configsystem.cs
- ArraySet.cs
- X509ChainElement.cs
- Visual3D.cs
- SqlMethodTransformer.cs
- DebugView.cs
- XmlLoader.cs
- DocumentViewer.cs
- WindowsRebar.cs
- ObjectPropertyMapping.cs
- ListQueryResults.cs
- SchemaConstraints.cs
- TableLayoutRowStyleCollection.cs
- JavaScriptObjectDeserializer.cs
- InstallerTypeAttribute.cs
- RemoteHelper.cs
- WindowsAltTab.cs
- DataGridViewCellStyleBuilderDialog.cs
- HandlerBase.cs
- PerformanceCountersElement.cs
- AxHost.cs
- BindingValueChangedEventArgs.cs
- MetafileHeaderWmf.cs