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
- UserControlParser.cs
- ConnectionStringsExpressionBuilder.cs
- StringBuilder.cs
- SmiEventSink_DeferedProcessing.cs
- OperatorExpressions.cs
- TaskHelper.cs
- IDictionary.cs
- BinaryUtilClasses.cs
- XmlSignificantWhitespace.cs
- AddInToken.cs
- ToolStripMenuItem.cs
- TextEvent.cs
- SQlBooleanStorage.cs
- PersistenceTask.cs
- MediaSystem.cs
- SqlUnionizer.cs
- MLangCodePageEncoding.cs
- IndexedGlyphRun.cs
- DeferredSelectedIndexReference.cs
- QuaternionConverter.cs
- InputLangChangeEvent.cs
- XmlMtomReader.cs
- COM2ExtendedBrowsingHandler.cs
- ActivityDesigner.cs
- SrgsElementList.cs
- CacheRequest.cs
- DropTarget.cs
- FixUp.cs
- TreeNodeBinding.cs
- GridViewColumnHeaderAutomationPeer.cs
- WebDisplayNameAttribute.cs
- GridViewDeletedEventArgs.cs
- TableLayoutStyleCollection.cs
- SafeEventLogReadHandle.cs
- ProviderUtil.cs
- UnionExpr.cs
- ControllableStoryboardAction.cs
- PeerApplicationLaunchInfo.cs
- BufferedOutputStream.cs
- KeyedHashAlgorithm.cs
- XmlSchemaImport.cs
- PagePropertiesChangingEventArgs.cs
- CodeStatementCollection.cs
- OleDbConnection.cs
- DocumentViewerAutomationPeer.cs
- CultureNotFoundException.cs
- PropertyInformationCollection.cs
- SetterBase.cs
- FontFamilyIdentifier.cs
- FacetDescriptionElement.cs
- EarlyBoundInfo.cs
- TextUtf8RawTextWriter.cs
- SimpleType.cs
- BaseConfigurationRecord.cs
- FileDialogCustomPlacesCollection.cs
- ConnectionManagementElementCollection.cs
- MergeLocalizationDirectives.cs
- SelectionRangeConverter.cs
- SymmetricAlgorithm.cs
- BindingGroup.cs
- KeyFrames.cs
- LongValidatorAttribute.cs
- SpanIndex.cs
- PeerNameRegistration.cs
- Pens.cs
- TextPenaltyModule.cs
- IgnoreSectionHandler.cs
- TailPinnedEventArgs.cs
- SqlBulkCopyColumnMappingCollection.cs
- FlagsAttribute.cs
- TextTabProperties.cs
- SmtpNetworkElement.cs
- ByteRangeDownloader.cs
- _SSPIWrapper.cs
- SpeechUI.cs
- Separator.cs
- MimeBasePart.cs
- ClientSettingsSection.cs
- TokenizerHelper.cs
- WebConfigurationHost.cs
- DecoderFallback.cs
- InvokeBase.cs
- ObjectContext.cs
- ZipIOModeEnforcingStream.cs
- PublisherIdentityPermission.cs
- ListItem.cs
- DesigntimeLicenseContext.cs
- PropertyFilterAttribute.cs
- OleDbPermission.cs
- WebControlAdapter.cs
- Range.cs
- DataGridViewCellValidatingEventArgs.cs
- KeyConstraint.cs
- PopOutPanel.cs
- RegionData.cs
- MsmqPoisonMessageException.cs
- Pair.cs
- AspNetSynchronizationContext.cs
- ChangeDirector.cs
- FontStyles.cs