Code:
/ DotNET / DotNET / 8.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
- PropertyConverter.cs
- DatePickerAutomationPeer.cs
- FlowDocumentPageViewerAutomationPeer.cs
- OptimisticConcurrencyException.cs
- WmpBitmapDecoder.cs
- RtType.cs
- ReflectionHelper.cs
- BitVec.cs
- ChtmlTextWriter.cs
- RightsManagementInformation.cs
- TextSchema.cs
- GeometryDrawing.cs
- ConstNode.cs
- OdbcStatementHandle.cs
- SimpleExpression.cs
- Separator.cs
- BitmapPalettes.cs
- RpcCryptoContext.cs
- TiffBitmapEncoder.cs
- QueryConverter.cs
- PrintPageEvent.cs
- AccessViolationException.cs
- RootBrowserWindowProxy.cs
- IisTraceWebEventProvider.cs
- ContainsSearchOperator.cs
- ConstNode.cs
- ToolBarPanel.cs
- BaseServiceProvider.cs
- LockCookie.cs
- DiscoveryVersionConverter.cs
- SizeConverter.cs
- ReadOnlyDataSourceView.cs
- XhtmlBasicCommandAdapter.cs
- ToolBar.cs
- PropVariant.cs
- UpdatePanel.cs
- NetNamedPipeSecurityMode.cs
- PerfCounters.cs
- Brush.cs
- MappingModelBuildProvider.cs
- Send.cs
- TagMapCollection.cs
- RoutedEventHandlerInfo.cs
- UserValidatedEventArgs.cs
- ProgressBarRenderer.cs
- X509CertificateChain.cs
- BidOverLoads.cs
- EllipseGeometry.cs
- ITextView.cs
- GorillaCodec.cs
- ThemeDictionaryExtension.cs
- PropertyDescriptorComparer.cs
- Hex.cs
- DetailsViewUpdateEventArgs.cs
- Switch.cs
- SectionVisual.cs
- TypographyProperties.cs
- DesignerAttributeInfo.cs
- StreamResourceInfo.cs
- WebControlAdapter.cs
- RtfToXamlReader.cs
- MissingSatelliteAssemblyException.cs
- BinaryFormatterSinks.cs
- Console.cs
- TableSectionStyle.cs
- CharacterBuffer.cs
- Margins.cs
- AsyncResult.cs
- WriteableBitmap.cs
- ImportCatalogPart.cs
- SizeValueSerializer.cs
- QuaternionConverter.cs
- ColorContextHelper.cs
- DelegateHelpers.cs
- StorageBasedPackageProperties.cs
- BindingList.cs
- Rectangle.cs
- FileRecordSequenceHelper.cs
- MessageTransmitTraceRecord.cs
- SwitchCase.cs
- CallbackCorrelationInitializer.cs
- QueryStringParameter.cs
- QilExpression.cs
- MetabaseSettings.cs
- _ContextAwareResult.cs
- GeneralTransform3DGroup.cs
- SelectedGridItemChangedEvent.cs
- EnumerableValidator.cs
- MessageQueueTransaction.cs
- FlatButtonAppearance.cs
- InternalConfigEventArgs.cs
- ContextBase.cs
- RootBuilder.cs
- MetadataUtilsSmi.cs
- BitmapEffectGeneralTransform.cs
- CommonProperties.cs
- TemplateBindingExpressionConverter.cs
- MouseEvent.cs
- ListBase.cs
- TTSEvent.cs