Code:
/ FX-1434 / FX-1434 / 1.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
- StrongNamePublicKeyBlob.cs
- ProcessHostConfigUtils.cs
- BinaryObjectInfo.cs
- ContentControl.cs
- TreeIterators.cs
- CollectionChangedEventManager.cs
- NamespaceCollection.cs
- TextTreeUndo.cs
- LayoutUtils.cs
- ListViewItem.cs
- ReadOnlyObservableCollection.cs
- BlurBitmapEffect.cs
- SqlTriggerContext.cs
- StateFinalizationDesigner.cs
- ALinqExpressionVisitor.cs
- TraceLog.cs
- GotoExpression.cs
- OleServicesContext.cs
- SqlDataSource.cs
- ConnectionsZone.cs
- PagedDataSource.cs
- input.cs
- CriticalExceptions.cs
- SettingsProperty.cs
- CalendarModeChangedEventArgs.cs
- ConfigurationSectionGroupCollection.cs
- FormView.cs
- MarshalByValueComponent.cs
- DefaultTextStore.cs
- PersistenceTypeAttribute.cs
- SharedHttpTransportManager.cs
- UnknownWrapper.cs
- AmbientValueAttribute.cs
- RegexFCD.cs
- VariableQuery.cs
- UnmanagedMarshal.cs
- XPathItem.cs
- PropertyChangeTracker.cs
- URL.cs
- TextModifierScope.cs
- ConfigurationLocation.cs
- SystemInformation.cs
- RefreshEventArgs.cs
- HttpCacheVary.cs
- CompilerParameters.cs
- FixedSOMPageConstructor.cs
- TreeNodeBinding.cs
- SvcMapFileLoader.cs
- _RegBlobWebProxyDataBuilder.cs
- BindingExpression.cs
- WebPartEditorCancelVerb.cs
- GridViewRowCollection.cs
- MergeFilterQuery.cs
- Scene3D.cs
- SerialReceived.cs
- CanonicalFontFamilyReference.cs
- DataGridViewImageColumn.cs
- CompleteWizardStep.cs
- HttpGetClientProtocol.cs
- ExpressionsCollectionConverter.cs
- DocumentPageTextView.cs
- Math.cs
- LambdaReference.cs
- MDIWindowDialog.cs
- DrawingServices.cs
- SchemaImporter.cs
- ObjectContextServiceProvider.cs
- FlowDocumentScrollViewer.cs
- ExecutionEngineException.cs
- _AutoWebProxyScriptWrapper.cs
- ErrorRuntimeConfig.cs
- TablePatternIdentifiers.cs
- ItemCheckedEvent.cs
- ActivityCompletionCallbackWrapper.cs
- AnimationStorage.cs
- DesignerLoader.cs
- TypeUtil.cs
- PrtTicket_Public_Simple.cs
- RegexCompiler.cs
- BitmapSourceSafeMILHandle.cs
- InternalBufferOverflowException.cs
- SoapTransportImporter.cs
- ByteStreamGeometryContext.cs
- SeekStoryboard.cs
- XamlTypeMapperSchemaContext.cs
- DbConnectionClosed.cs
- DbConnectionPoolCounters.cs
- OdbcConnectionString.cs
- ValueUnavailableException.cs
- DoubleLinkList.cs
- StringComparer.cs
- SynchronizedPool.cs
- AttributeCollection.cs
- WebPartRestoreVerb.cs
- ResXFileRef.cs
- PackageRelationship.cs
- EventSinkActivity.cs
- CombinedGeometry.cs
- ToolStripDropDownButton.cs
- DataReaderContainer.cs