Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / Designer / WinForms / System / WinForms / Design / ColumnHeaderCollectionEditor.cs / 1 / ColumnHeaderCollectionEditor.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- 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.Windows.Forms; using System.Drawing; using System.Design; using System.Drawing.Design; using System.Windows.Forms.ComponentModel; using System.Diagnostics.CodeAnalysis; ////// /// internal class ColumnHeaderCollectionEditor : CollectionEditor { ////// Provides an editor for an image collection. ////// /// //Called through reflection [SuppressMessage("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] public ColumnHeaderCollectionEditor(Type type) : base(type){ } ///Initializes a new instance of the ///class. /// /// protected override string HelpTopic { get { return "net.ComponentModel.ColumnHeaderCollectionEditor"; } } ///Gets the help topic to display for the dialog help button or pressing F1. Override to /// display a different help topic. ////// /// protected override object SetItems(object editValue, object[] value) { if (editValue != null) { Array oldValue = (Array)GetItems(editValue); bool valueSame = (oldValue.Length == value.Length); // We look to see if the value implements IList, and if it does, // we set through that. // Debug.Assert(editValue is System.Collections.IList, "editValue is not an IList"); System.Windows.Forms.ListView.ColumnHeaderCollection list = editValue as System.Windows.Forms.ListView.ColumnHeaderCollection; if (editValue != null) { list.Clear(); System.Windows.Forms.ColumnHeader[] colHeaders = new System.Windows.Forms.ColumnHeader[value.Length]; Array.Copy(value, 0, colHeaders, 0, value.Length); list.AddRange( colHeaders ); } } return editValue; } ////// Sets /// the specified collection to have the specified array of items. /// ////// /// internal override void OnItemRemoving(object item) { ListView listview = this.Context.Instance as ListView; if (listview == null) { return; } System.Windows.Forms.ColumnHeader column = item as System.Windows.Forms.ColumnHeader; if (column != null) { IComponentChangeService cs = GetService(typeof(IComponentChangeService)) as IComponentChangeService; PropertyDescriptor itemsProp = null; if (cs != null) { itemsProp = TypeDescriptor.GetProperties(this.Context.Instance)["Columns"]; cs.OnComponentChanging(this.Context.Instance, itemsProp); } listview.Columns.Remove( column ); if (cs != null && itemsProp != null) { cs.OnComponentChanged(this.Context.Instance, itemsProp, null, null); } } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved./// Removes the item from listview column header collection /// ///
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- DrawTreeNodeEventArgs.cs
- NetMsmqSecurity.cs
- ExpandCollapsePattern.cs
- EdmSchemaError.cs
- SelectionItemProviderWrapper.cs
- GenerateHelper.cs
- SqlDataReaderSmi.cs
- ProjectionCamera.cs
- XmlSchemaSubstitutionGroup.cs
- AsymmetricSecurityProtocol.cs
- ScriptReference.cs
- LocalValueEnumerator.cs
- VectorValueSerializer.cs
- ProcessHostServerConfig.cs
- HttpListenerContext.cs
- DataGridRowHeaderAutomationPeer.cs
- __ComObject.cs
- SettingsProperty.cs
- PanelStyle.cs
- BaseTemplateBuildProvider.cs
- QueryProcessor.cs
- ImageIndexConverter.cs
- HtmlTableRowCollection.cs
- PagedDataSource.cs
- RuleSet.cs
- ViewStateChangedEventArgs.cs
- StatusBarPanelClickEvent.cs
- WindowsUserNameSecurityTokenAuthenticator.cs
- RangeEnumerable.cs
- Exception.cs
- _DomainName.cs
- WebReference.cs
- EqualityComparer.cs
- DrawingCollection.cs
- ClientTargetSection.cs
- EdmItemError.cs
- MetadataFile.cs
- XmlExtensionFunction.cs
- QilNode.cs
- FrameworkElement.cs
- PackagePartCollection.cs
- TraceRecord.cs
- InstanceDataCollectionCollection.cs
- XmlSchemaSubstitutionGroup.cs
- ControlPaint.cs
- NamedPipeAppDomainProtocolHandler.cs
- CompilationRelaxations.cs
- DataBinder.cs
- MILUtilities.cs
- TemplatedWizardStep.cs
- UnmanagedMemoryStreamWrapper.cs
- XmlArrayItemAttributes.cs
- MenuItem.cs
- MimeTypePropertyAttribute.cs
- TypefaceMetricsCache.cs
- TextView.cs
- SemanticBasicElement.cs
- IndexOutOfRangeException.cs
- controlskin.cs
- UserPreferenceChangingEventArgs.cs
- TextEndOfLine.cs
- DataGridTemplateColumn.cs
- SortExpressionBuilder.cs
- MailSettingsSection.cs
- CompositeActivityTypeDescriptor.cs
- DbMetaDataCollectionNames.cs
- GradientStopCollection.cs
- Renderer.cs
- InputReportEventArgs.cs
- ParentControlDesigner.cs
- ContainerParaClient.cs
- ManagedWndProcTracker.cs
- ResourceCategoryAttribute.cs
- TreeNodeBindingDepthConverter.cs
- MenuItemStyle.cs
- TrackBarRenderer.cs
- ConfigPathUtility.cs
- Literal.cs
- SourceLineInfo.cs
- UriTemplateLiteralQueryValue.cs
- PropertyCondition.cs
- ClientSponsor.cs
- WebPartsPersonalization.cs
- HttpListener.cs
- ComponentEditorPage.cs
- PolyLineSegmentFigureLogic.cs
- Number.cs
- CacheOutputQuery.cs
- SelectionProviderWrapper.cs
- StringPropertyBuilder.cs
- BaseResourcesBuildProvider.cs
- SqlUDTStorage.cs
- LocatorGroup.cs
- DataGridViewComboBoxColumnDesigner.cs
- FixedTextBuilder.cs
- _BaseOverlappedAsyncResult.cs
- SerialStream.cs
- ApplicationSettingsBase.cs
- CompositeCollection.cs
- ZipIOLocalFileHeader.cs