Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / Designer / WinForms / System / WinForms / Design / DataGridColumnStyleMappingNameEditor.cs / 1 / DataGridColumnStyleMappingNameEditor.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Windows.Forms.Design { using System.Design; using System; using System.ComponentModel; using System.ComponentModel.Design; using System.Drawing; using System.Drawing.Design; internal class DataGridColumnStyleMappingNameEditor : UITypeEditor { // FxCop made me add this constructor private DataGridColumnStyleMappingNameEditor() : base() {} private DesignBindingPicker designBindingPicker; public override bool IsDropDownResizable { get { return true; } } public override object EditValue(ITypeDescriptorContext context, IServiceProvider provider, object value) { if (provider != null && context.Instance != null) { object instance = context.Instance; DataGridColumnStyle columnStyle = (DataGridColumnStyle) context.Instance; if (columnStyle.DataGridTableStyle == null || columnStyle.DataGridTableStyle.DataGrid == null) return value; PropertyDescriptor dataSourceProperty = TypeDescriptor.GetProperties(columnStyle.DataGridTableStyle.DataGrid)["DataSource"]; if (dataSourceProperty != null) { object dataSource = dataSourceProperty.GetValue(columnStyle.DataGridTableStyle.DataGrid); if (designBindingPicker == null) { designBindingPicker = new DesignBindingPicker(); } DesignBinding oldSelection = new DesignBinding(null, (string) value); DesignBinding newSelection = designBindingPicker.Pick(context, provider, false, /* showDataSources */ true, /* showDataMembers */ false, /* selectListMembers */ dataSource, String.Empty, oldSelection); if (dataSource != null && newSelection != null) { if (String.IsNullOrEmpty(newSelection.DataMember) || newSelection.DataMember == null) value = ""; else value = newSelection.DataField; } } } return value; } public override UITypeEditorEditStyle GetEditStyle(ITypeDescriptorContext context) { return UITypeEditorEditStyle.DropDown; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- XmlArrayAttribute.cs
- Tokenizer.cs
- Constraint.cs
- InstanceHandleReference.cs
- HttpDebugHandler.cs
- DependencyPropertyKey.cs
- HttpContext.cs
- entitydatasourceentitysetnameconverter.cs
- StringSorter.cs
- SrgsToken.cs
- StaticSiteMapProvider.cs
- DbException.cs
- Grid.cs
- DiscoveryEndpoint.cs
- Setter.cs
- XhtmlBasicListAdapter.cs
- Emitter.cs
- PassportPrincipal.cs
- RevocationPoint.cs
- ProcessHost.cs
- WSTransactionSection.cs
- BitmapCacheBrush.cs
- Errors.cs
- StrokeCollectionConverter.cs
- DataMisalignedException.cs
- SoapCodeExporter.cs
- DirectionalLight.cs
- ListItemViewAttribute.cs
- XmlDownloadManager.cs
- StylusCaptureWithinProperty.cs
- MimeFormatExtensions.cs
- WebPartEditorOkVerb.cs
- GlobalProxySelection.cs
- EventLogEntryCollection.cs
- TextureBrush.cs
- mda.cs
- WebBrowserDocumentCompletedEventHandler.cs
- AuthenticationService.cs
- TypeElement.cs
- SymbolPair.cs
- RequestContext.cs
- HttpBrowserCapabilitiesBase.cs
- CollectionType.cs
- AnnouncementEndpoint.cs
- TextBoxView.cs
- BooleanProjectedSlot.cs
- SectionUpdates.cs
- CheckBoxFlatAdapter.cs
- ThreadExceptionEvent.cs
- AnnotationResourceCollection.cs
- RequestCachePolicyConverter.cs
- IndexExpression.cs
- IDQuery.cs
- TypeSemantics.cs
- Compress.cs
- RegisteredScript.cs
- CodeGeneratorAttribute.cs
- CompilerHelpers.cs
- PolyQuadraticBezierSegment.cs
- EntityTypeEmitter.cs
- CommandBinding.cs
- KeyInfo.cs
- DataGridColumnCollection.cs
- SqlRecordBuffer.cs
- WebDisplayNameAttribute.cs
- WindowProviderWrapper.cs
- RequestCachePolicyConverter.cs
- BinaryObjectReader.cs
- IIS7WorkerRequest.cs
- FactoryMaker.cs
- UnauthorizedWebPart.cs
- ListChangedEventArgs.cs
- WarningException.cs
- Publisher.cs
- SafeNativeMethodsOther.cs
- ClientOptions.cs
- SystemIPAddressInformation.cs
- DecoderFallbackWithFailureFlag.cs
- SafeSecurityHelper.cs
- SafeNativeMethodsCLR.cs
- DataSourceControlBuilder.cs
- EventBuilder.cs
- CodeGeneratorOptions.cs
- LicFileLicenseProvider.cs
- BindingMAnagerBase.cs
- TraceLevelHelper.cs
- IndexedEnumerable.cs
- XAMLParseException.cs
- BidOverLoads.cs
- AspCompat.cs
- SingleTagSectionHandler.cs
- ScrollProviderWrapper.cs
- OuterGlowBitmapEffect.cs
- Util.cs
- DesignerRegion.cs
- ArgIterator.cs
- EmbossBitmapEffect.cs
- RoutedEventConverter.cs
- Exception.cs
- HexParser.cs