Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / fx / src / Designer / WebForms / System / Web / UI / Design / DataColumnSelectionConverter.cs / 1 / DataColumnSelectionConverter.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI.Design { using System; using System.Collections; using System.ComponentModel; using System.ComponentModel.Design; using System.Data; using System.Design; using System.Diagnostics; using System.Runtime.InteropServices; using System.Globalization; using System.Web.UI.Design.WebControls; using System.Web.UI.WebControls; ////// /// [System.Security.Permissions.SecurityPermission(System.Security.Permissions.SecurityAction.Demand, Flags=System.Security.Permissions.SecurityPermissionFlag.UnmanagedCode)] public class DataColumnSelectionConverter : TypeConverter { ////// Provides design-time support for a gridview's bound field's data field properties. /// ////// /// public DataColumnSelectionConverter() { } ////// Initializes a new instance of ///. /// /// /// public override bool CanConvertFrom(ITypeDescriptorContext context, Type sourceType) { if (sourceType == typeof(string)) { return true; } return false; } ////// Gets a value indicating whether this converter can /// convert an object in the given source type to the native type of the converter /// using the context. /// ////// /// public override object ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, object value) { if (value == null) { return String.Empty; } else if (value.GetType() == typeof(string)) { return (string)value; } throw GetConvertFromException(value); } ////// Converts the given object to the converter's native type. /// ////// /// public override StandardValuesCollection GetStandardValues(ITypeDescriptorContext context) { string[] names = null; ArrayList namesList = new ArrayList(); if (context != null) { IComponent component = context.Instance as IComponent; if (component != null) { GridView gridView = component as GridView; if (gridView != null) { if (gridView.AutoGenerateColumns) { // add all the fields DataFieldConverter dataFieldConverter = new DataFieldConverter(); StandardValuesCollection values = dataFieldConverter.GetStandardValues(context); foreach (object value in values) { namesList.Add(value); } } DataControlFieldCollection fields = gridView.Columns; foreach (DataControlField field in fields) { BoundField boundField = field as BoundField; if (boundField != null) { string dataField = boundField.DataField; if (!namesList.Contains(dataField)) { namesList.Add(dataField); } } } namesList.Sort(); names = new string[namesList.Count]; namesList.CopyTo(names, 0); } } } return new StandardValuesCollection(names); } ////// Gets the data fields of the bound fields and autogenerated fields in the current gridview for the //// RowHeaderColumn and SummaryHeaderColumn properties. /// ////// /// public override bool GetStandardValuesExclusive(ITypeDescriptorContext context) { return false; } ////// Gets a value indicating whether the collection of standard values returned from /// ///is an exclusive /// list of possible values, using the specified context. /// /// /// public override bool GetStandardValuesSupported(ITypeDescriptorContext context) { if (context != null && context.Instance is IComponent) { // We only support the dropdown in single-select mode. return true; } return false; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved./// Gets a value indicating whether this object supports a standard set of values /// that can be picked from a list. /// ///
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- Decoder.cs
- GeneratedContractType.cs
- XsdDuration.cs
- SpnegoTokenAuthenticator.cs
- XmlCharCheckingReader.cs
- DataServiceRequestException.cs
- FixedSOMContainer.cs
- Polyline.cs
- TypeLoadException.cs
- HelloMessageApril2005.cs
- AdRotatorDesigner.cs
- DecodeHelper.cs
- EndpointAddress.cs
- AuthorizationRuleCollection.cs
- DesignTimeVisibleAttribute.cs
- CompositeCollection.cs
- RichTextBox.cs
- InsufficientMemoryException.cs
- ReachSerializationUtils.cs
- UnhandledExceptionEventArgs.cs
- HTMLTagNameToTypeMapper.cs
- DataBindingCollection.cs
- TextElementEnumerator.cs
- ScriptManager.cs
- EraserBehavior.cs
- TextContainerHelper.cs
- KoreanCalendar.cs
- Internal.cs
- SessionStateModule.cs
- XamlPoint3DCollectionSerializer.cs
- HandlerFactoryWrapper.cs
- DataRelationCollection.cs
- ReferenceEqualityComparer.cs
- Scene3D.cs
- DBParameter.cs
- NativeMethods.cs
- PositiveTimeSpanValidatorAttribute.cs
- IdentitySection.cs
- SQLMoneyStorage.cs
- ReadContentAsBinaryHelper.cs
- EventTask.cs
- ProfileSection.cs
- ServicePointManager.cs
- DetailsViewInsertedEventArgs.cs
- SqlCrossApplyToCrossJoin.cs
- RepeatBehavior.cs
- ListItem.cs
- TableParagraph.cs
- PrimitiveXmlSerializers.cs
- Token.cs
- RoleGroup.cs
- UIElement3DAutomationPeer.cs
- IChannel.cs
- BufferManager.cs
- OleDbCommandBuilder.cs
- AttachedAnnotationChangedEventArgs.cs
- SuppressIldasmAttribute.cs
- PerformanceCounterLib.cs
- StoreContentChangedEventArgs.cs
- LocalizedNameDescriptionPair.cs
- URI.cs
- MouseButtonEventArgs.cs
- GridViewColumnCollection.cs
- graph.cs
- ParallelTimeline.cs
- RuntimeConfigurationRecord.cs
- DesignerHierarchicalDataSourceView.cs
- LineMetrics.cs
- XmlCharacterData.cs
- SqlDependencyListener.cs
- InteropDesigner.xaml.cs
- NegatedCellConstant.cs
- InputLanguage.cs
- UidPropertyAttribute.cs
- ConfigUtil.cs
- GeneralTransform3D.cs
- Button.cs
- XmlWriterSettings.cs
- ToolStripDropDownButton.cs
- ConfigurationProperty.cs
- InvalidContentTypeException.cs
- BitmapEffectDrawing.cs
- Trace.cs
- PageContentCollection.cs
- FormsAuthentication.cs
- PageParser.cs
- EarlyBoundInfo.cs
- MetadataItem_Static.cs
- SiteOfOriginContainer.cs
- RegexNode.cs
- StickyNote.cs
- SmtpFailedRecipientException.cs
- Underline.cs
- Menu.cs
- SchemaImporter.cs
- TextEditor.cs
- TypedRowGenerator.cs
- Point.cs
- ListBox.cs
- AssemblyFilter.cs