Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / xsp / System / Web / UI / ControlPropertyNameConverter.cs / 1305376 / 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. /// 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
- StorageConditionPropertyMapping.cs
- UnauthorizedWebPart.cs
- WebPartConnectionsConnectVerb.cs
- ActivationProxy.cs
- FieldToken.cs
- X509Utils.cs
- IssuedTokenClientBehaviorsElementCollection.cs
- WizardStepBase.cs
- BitmapEffectGroup.cs
- DefaultTraceListener.cs
- SiteMapNode.cs
- TextTreeTextBlock.cs
- DoubleLink.cs
- WebPartMenuStyle.cs
- InvalidCastException.cs
- CapacityStreamGeometryContext.cs
- MergeEnumerator.cs
- HasActivatableWorkflowEvent.cs
- CodeDOMUtility.cs
- ISFTagAndGuidCache.cs
- _FtpControlStream.cs
- ObjectHelper.cs
- SHA1.cs
- RadioButton.cs
- ToolStripPanelRenderEventArgs.cs
- BaseValidatorDesigner.cs
- GlobalizationAssembly.cs
- IdentitySection.cs
- Faults.cs
- IDispatchConstantAttribute.cs
- FontFamilyValueSerializer.cs
- DataGridViewRowCollection.cs
- ConcurrentBag.cs
- HttpContext.cs
- ClusterRegistryConfigurationProvider.cs
- SafeCoTaskMem.cs
- SqlCacheDependency.cs
- SubstitutionList.cs
- InstanceHandle.cs
- CatalogPartCollection.cs
- ExpandableObjectConverter.cs
- TableCellCollection.cs
- PaintEvent.cs
- XmlProcessingInstruction.cs
- XmlSchemaAttribute.cs
- SimpleHandlerFactory.cs
- SplitterCancelEvent.cs
- UITypeEditors.cs
- MessageQueueCriteria.cs
- SelectionRange.cs
- ObjectContextServiceProvider.cs
- CodeGeneratorAttribute.cs
- GridViewCancelEditEventArgs.cs
- RangeValueProviderWrapper.cs
- Screen.cs
- Item.cs
- StyleSheet.cs
- AutoGeneratedField.cs
- ObfuscationAttribute.cs
- XComponentModel.cs
- ToolStripMenuItem.cs
- ConnectionConsumerAttribute.cs
- DataGridViewSelectedCellCollection.cs
- MaxValueConverter.cs
- MasterPageParser.cs
- UnsafeNativeMethods.cs
- BamlLocalizerErrorNotifyEventArgs.cs
- _SecureChannel.cs
- WindowsFormsHost.cs
- ScrollViewer.cs
- StringOutput.cs
- BridgeDataRecord.cs
- IISMapPath.cs
- dsa.cs
- SynchronizationLockException.cs
- Sequence.cs
- ImageField.cs
- FunctionUpdateCommand.cs
- Normalization.cs
- MobileUserControlDesigner.cs
- HandlerFactoryWrapper.cs
- CustomAttributeSerializer.cs
- FatalException.cs
- CompositeActivityValidator.cs
- DataSysAttribute.cs
- RtfToXamlReader.cs
- XPathDocument.cs
- ListChangedEventArgs.cs
- SchemaSetCompiler.cs
- StatusBarPanelClickEvent.cs
- ScalarType.cs
- Html32TextWriter.cs
- TextSchema.cs
- LocalizableAttribute.cs
- SchemaImporterExtensionElementCollection.cs
- MemberBinding.cs
- Graphics.cs
- ObjectResult.cs
- ObjectStorage.cs
- ExponentialEase.cs