Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / fx / src / Designer / WinForms / System / WinForms / Design / ListViewGroupCollectionEditor.cs / 1 / ListViewGroupCollectionEditor.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- [assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode", Scope="member", Target="System.Windows.Forms.Design.ListViewGroupCollectionEditor..ctor(System.Type)")] namespace System.Windows.Forms.Design { using System.Runtime.InteropServices; using System.Diagnostics; using System; using System.IO; using System.Collections; using System.ComponentModel; using System.ComponentModel.Design; using System.ComponentModel.Design.Serialization; using System.Windows.Forms; using System.Drawing; using System.Design; using System.Drawing.Design; using System.Windows.Forms.ComponentModel; ////// /// internal class ListViewGroupCollectionEditor : CollectionEditor { object editValue; ////// Provides an editor for an image collection. ////// /// public ListViewGroupCollectionEditor(Type type) : base(type){ } ////// /// Creates a ListViewGroup instance. /// protected override object CreateInstance(Type itemType) { ListViewGroup lvg = (ListViewGroup) base.CreateInstance(itemType); // Create an unique name for the list view group. lvg.Name = CreateListViewGroupName((ListViewGroupCollection) this.editValue); return lvg; } private string CreateListViewGroupName(ListViewGroupCollection lvgCollection) { string lvgName = "ListViewGroup"; string resultName; INameCreationService ncs = this.GetService(typeof(INameCreationService)) as INameCreationService; IContainer container = this.GetService(typeof(IContainer)) as IContainer; if (ncs != null && container != null) { lvgName = ncs.CreateName(container, typeof(ListViewGroup)); } // strip the digits from the end. while (Char.IsDigit(lvgName[lvgName.Length - 1])) { lvgName = lvgName.Substring(0, lvgName.Length - 1); } int i = 1; resultName = lvgName + i.ToString(System.Globalization.CultureInfo.CurrentCulture); while (lvgCollection[resultName] != null) { i ++; resultName = lvgName + i.ToString(System.Globalization.CultureInfo.CurrentCulture); } return resultName; } public override object EditValue(ITypeDescriptorContext context, IServiceProvider provider, object value) { this.editValue = value; object ret; // This will block while the ListViewGroupCollectionDialog is running. ret = base.EditValue(context, provider, value); // The user is done w/ the ListViewGroupCollectionDialog. // Don't need the edit value any longer this.editValue = null; return ret; } } } // 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
- IncomingWebRequestContext.cs
- QuarticEase.cs
- PrintingPermissionAttribute.cs
- Debug.cs
- ConfigurationValue.cs
- ExternalException.cs
- XpsFilter.cs
- ModelItemExtensions.cs
- WebConfigurationFileMap.cs
- FormViewModeEventArgs.cs
- DrawingVisualDrawingContext.cs
- QilDataSource.cs
- RealProxy.cs
- SpotLight.cs
- SqlFunctionAttribute.cs
- SoapConverter.cs
- CompiledRegexRunnerFactory.cs
- System.Data_BID.cs
- RelatedEnd.cs
- DiscoveryDocument.cs
- TextAnchor.cs
- Point3DAnimationUsingKeyFrames.cs
- ToolboxItemFilterAttribute.cs
- ListSourceHelper.cs
- TextContainerHelper.cs
- ListViewCancelEventArgs.cs
- RangeContentEnumerator.cs
- SymDocumentType.cs
- URLBuilder.cs
- DataGridViewRowEventArgs.cs
- CollectionViewGroupRoot.cs
- ColorTranslator.cs
- ItemDragEvent.cs
- MethodRental.cs
- EffectiveValueEntry.cs
- Message.cs
- FontFamilyValueSerializer.cs
- StringFreezingAttribute.cs
- Quaternion.cs
- XmlDataCollection.cs
- ConfigurationManagerHelperFactory.cs
- CellQuery.cs
- HttpContext.cs
- TranslateTransform3D.cs
- MenuItem.cs
- LinqTreeNodeEvaluator.cs
- _AutoWebProxyScriptWrapper.cs
- ThreadStateException.cs
- RenderOptions.cs
- TypeCollectionPropertyEditor.cs
- RecipientInfo.cs
- BindingExpressionUncommonField.cs
- Repeater.cs
- TCPClient.cs
- SQLString.cs
- VectorConverter.cs
- SQlBooleanStorage.cs
- StylusCollection.cs
- SafeCryptHandles.cs
- SymLanguageType.cs
- SingleStorage.cs
- ParserContext.cs
- HotCommands.cs
- UInt64Storage.cs
- SchemaTableColumn.cs
- EmptyTextWriter.cs
- FileClassifier.cs
- WebPartConnection.cs
- DataPager.cs
- MapPathBasedVirtualPathProvider.cs
- MorphHelpers.cs
- SecurityMode.cs
- BindingMemberInfo.cs
- StartUpEventArgs.cs
- HandlerFactoryWrapper.cs
- DataGridItem.cs
- SmuggledIUnknown.cs
- URIFormatException.cs
- FlowDocument.cs
- PropertyGridView.cs
- SizeKeyFrameCollection.cs
- COM2EnumConverter.cs
- IISMapPath.cs
- Registry.cs
- TextRunCacheImp.cs
- RtfToXamlLexer.cs
- TaskbarItemInfo.cs
- ZoomPercentageConverter.cs
- XmlNotation.cs
- Italic.cs
- MediaTimeline.cs
- CodeDOMProvider.cs
- RunClient.cs
- EventLog.cs
- SingleObjectCollection.cs
- TraceListeners.cs
- PhoneCall.cs
- DataFormats.cs
- XmlMtomWriter.cs
- ByteStorage.cs