Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / fx / src / Designer / WinForms / System / WinForms / Design / StringArrayEditor.cs / 1 / StringArrayEditor.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- /* */ namespace System.Windows.Forms.Design { using System; using System.Collections; using Microsoft.Win32; using System.ComponentModel; using System.ComponentModel.Design; using System.Diagnostics; using System.Diagnostics.CodeAnalysis; using System.Drawing; using System.Windows.Forms; ////// /// The StringArrayEditor is a collection editor that is specifically /// designed to edit arrays containing strings. /// internal class StringArrayEditor : StringCollectionEditor { [SuppressMessage("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] public StringArrayEditor(Type type) : base(type) { } ////// /// Retrieves the data type this collection contains. The default /// implementation looks inside of the collection for the Item property /// and returns the returning datatype of the item. Do not call this /// method directly. Instead, use the CollectionItemType property. Use this /// method to override the default implementation. /// protected override Type CreateCollectionItemType() { return CollectionType.GetElementType(); } ////// /// We implement the getting and setting of items on this collection. /// protected override object[] GetItems(object editValue) { Array valueArray = editValue as Array; if (valueArray == null) { return new object[0]; } else { object[] items = new object[valueArray.GetLength(0)]; Array.Copy(valueArray, items, items.Length); return items; } } ////// /// We implement the getting and setting of items on this collection. /// It should return an instance to replace editValue with, or editValue /// if there is no need to replace the instance. /// protected override object SetItems(object editValue, object[] value) { if (editValue is Array || editValue == null) { Array newArray = Array.CreateInstance(CollectionItemType, value.Length); Array.Copy(value, newArray, value.Length); return newArray; } return editValue; } } } // 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
- SecurityUtils.cs
- DesignerCategoryAttribute.cs
- CodeAttachEventStatement.cs
- OdbcEnvironment.cs
- IndexedString.cs
- Camera.cs
- TextTreeRootTextBlock.cs
- Assembly.cs
- CommonDialog.cs
- MessageLoggingElement.cs
- DataBoundLiteralControl.cs
- TextProperties.cs
- RemotingServices.cs
- Maps.cs
- LinkedList.cs
- TextServicesCompartmentContext.cs
- WorkflowIdleBehavior.cs
- autovalidator.cs
- HttpHandler.cs
- PageHandlerFactory.cs
- MenuCommands.cs
- SimpleLine.cs
- DataGridViewCellMouseEventArgs.cs
- ZoneMembershipCondition.cs
- Package.cs
- LocalClientSecuritySettings.cs
- XmlMapping.cs
- SymmetricSecurityProtocolFactory.cs
- Rotation3D.cs
- ProgressBarBrushConverter.cs
- SqlDependencyListener.cs
- PrintPreviewControl.cs
- ScriptBehaviorDescriptor.cs
- ConstraintEnumerator.cs
- UriSection.cs
- MarkupWriter.cs
- DeviceContexts.cs
- MatchNoneMessageFilter.cs
- WebPartUserCapability.cs
- GregorianCalendar.cs
- WinEventQueueItem.cs
- Pair.cs
- documentation.cs
- XmlElementAttributes.cs
- ManipulationPivot.cs
- ObjectToModelValueConverter.cs
- HwndHostAutomationPeer.cs
- ModelServiceImpl.cs
- ThreadLocal.cs
- AdjustableArrowCap.cs
- CustomErrorsSection.cs
- ElementMarkupObject.cs
- HttpHandler.cs
- HWStack.cs
- UInt16Storage.cs
- ToolStripItemTextRenderEventArgs.cs
- LinearGradientBrush.cs
- RequestCachePolicyConverter.cs
- InheritanceRules.cs
- xsdvalidator.cs
- ComAdminInterfaces.cs
- TransformDescriptor.cs
- RemotingConfiguration.cs
- BooleanExpr.cs
- KeyEvent.cs
- BStrWrapper.cs
- FunctionImportElement.cs
- ItemsChangedEventArgs.cs
- RoutingExtensionElement.cs
- XPathMessageFilter.cs
- SerializableAttribute.cs
- ContextMenuService.cs
- ErrorWrapper.cs
- VectorCollection.cs
- MemoryMappedFile.cs
- PrintPreviewControl.cs
- ExpressionTextBoxAutomationPeer.cs
- IISMapPath.cs
- MsmqHostedTransportManager.cs
- SplitContainer.cs
- ListViewUpdatedEventArgs.cs
- SqlSelectStatement.cs
- TableAdapterManagerMethodGenerator.cs
- Context.cs
- PagerSettings.cs
- DesignerEditorPartChrome.cs
- CompositionAdorner.cs
- ValidationErrorCollection.cs
- TreeNodeConverter.cs
- RelOps.cs
- WindowsRichEdit.cs
- SqlDataAdapter.cs
- DeferredTextReference.cs
- SqlBulkCopyColumnMappingCollection.cs
- ApplicationServicesHostFactory.cs
- ReflectionTypeLoadException.cs
- XmlBinaryReader.cs
- OdbcFactory.cs
- InlineCollection.cs
- SqlCachedBuffer.cs