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
- PathFigureCollection.cs
- CatalogPartCollection.cs
- ClientBuildManagerTypeDescriptionProviderBridge.cs
- PropertyChangedEventManager.cs
- TriState.cs
- DynamicFilter.cs
- AttributeQuery.cs
- TextProviderWrapper.cs
- UnrecognizedPolicyAssertionElement.cs
- DoubleAnimationClockResource.cs
- RequestCachingSection.cs
- MetabaseSettingsIis7.cs
- FastPropertyAccessor.cs
- ProgressBarAutomationPeer.cs
- unsafeIndexingFilterStream.cs
- XPathDocumentIterator.cs
- MaskInputRejectedEventArgs.cs
- TraceLevelHelper.cs
- ImplicitInputBrush.cs
- FloaterBaseParaClient.cs
- CompilationRelaxations.cs
- NullableDoubleMinMaxAggregationOperator.cs
- DispatcherHooks.cs
- SqlError.cs
- XmlResolver.cs
- NameSpaceExtractor.cs
- BinaryFormatter.cs
- XmlIncludeAttribute.cs
- ControlParameter.cs
- PropertyConverter.cs
- EntityDataSourceEntitySetNameItem.cs
- CompositeDuplexBindingElementImporter.cs
- List.cs
- AlternateView.cs
- InkCanvasSelection.cs
- assertwrapper.cs
- HtmlTableRowCollection.cs
- InplaceBitmapMetadataWriter.cs
- metadatamappinghashervisitor.cs
- ObjectParameterCollection.cs
- AssemblyAttributes.cs
- MethodCallConverter.cs
- CodeDirectionExpression.cs
- MemberDomainMap.cs
- StateMachineWorkflowInstance.cs
- InternalPermissions.cs
- ContentElementAutomationPeer.cs
- EpmContentDeSerializer.cs
- Int32EqualityComparer.cs
- XPathQilFactory.cs
- DateRangeEvent.cs
- SessionParameter.cs
- Viewport2DVisual3D.cs
- EventListenerClientSide.cs
- TagPrefixAttribute.cs
- EntityProxyTypeInfo.cs
- GenericUriParser.cs
- TextReader.cs
- ExtensionWindow.cs
- UnsafeNativeMethodsCLR.cs
- WindowsSpinner.cs
- TreeNodeBinding.cs
- QueueAccessMode.cs
- WindowsComboBox.cs
- ItemAutomationPeer.cs
- HelpKeywordAttribute.cs
- XPathItem.cs
- EventMap.cs
- TextTreeTextNode.cs
- DataGridViewDesigner.cs
- SqlDataRecord.cs
- SQLStringStorage.cs
- HashCodeCombiner.cs
- embossbitmapeffect.cs
- FixUpCollection.cs
- MobileErrorInfo.cs
- DuplicateContext.cs
- CodePropertyReferenceExpression.cs
- precedingquery.cs
- MediaTimeline.cs
- InstanceKey.cs
- GeometryConverter.cs
- ValidationService.cs
- ExpressionStringBuilder.cs
- SamlDoNotCacheCondition.cs
- DesignerAutoFormatCollection.cs
- CompositeFontInfo.cs
- RoutedEventConverter.cs
- AutomationPatternInfo.cs
- DefaultHttpHandler.cs
- DragDrop.cs
- DescendantOverDescendantQuery.cs
- SafeNativeMethodsOther.cs
- BitmapScalingModeValidation.cs
- CompositeScriptReferenceEventArgs.cs
- Funcletizer.cs
- XmlSchemaException.cs
- FormViewInsertedEventArgs.cs
- SqlRowUpdatedEvent.cs
- DataObjectCopyingEventArgs.cs