Code:
/ DotNET / DotNET / 8.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
- CompilerResults.cs
- HttpRequestTraceRecord.cs
- HttpCacheParams.cs
- SystemWebCachingSectionGroup.cs
- TargetConverter.cs
- DispatcherEventArgs.cs
- TreeNodeClickEventArgs.cs
- SystemResourceKey.cs
- BuildTopDownAttribute.cs
- PackageDigitalSignatureManager.cs
- WindowsToolbarItemAsMenuItem.cs
- versioninfo.cs
- UnsafeNativeMethods.cs
- MultiPropertyDescriptorGridEntry.cs
- SplitterPanel.cs
- DataConnectionHelper.cs
- AmbientValueAttribute.cs
- SafeCertificateContext.cs
- HttpHandlersSection.cs
- TreePrinter.cs
- UInt64.cs
- PasswordTextNavigator.cs
- ListItemCollection.cs
- UIElement.cs
- NullRuntimeConfig.cs
- ProcessModuleCollection.cs
- HashHelper.cs
- Help.cs
- MonthChangedEventArgs.cs
- SwitchElementsCollection.cs
- Label.cs
- QuadraticBezierSegment.cs
- TypedRowHandler.cs
- DesignerSerializationOptionsAttribute.cs
- ControllableStoryboardAction.cs
- EntityClientCacheKey.cs
- Binding.cs
- StorageInfo.cs
- DefaultPrintController.cs
- SelectionList.cs
- PermissionSetEnumerator.cs
- SslStream.cs
- COM2ColorConverter.cs
- XmlNotation.cs
- Brush.cs
- MaterialGroup.cs
- MLangCodePageEncoding.cs
- HttpClientCertificate.cs
- ResourceManager.cs
- FormsAuthenticationCredentials.cs
- PersonalizationState.cs
- LockCookie.cs
- ButtonColumn.cs
- HashAlgorithm.cs
- BrowserDefinition.cs
- PolicyValidationException.cs
- DrawingContextWalker.cs
- ResXFileRef.cs
- NegatedCellConstant.cs
- HttpServerUtilityWrapper.cs
- InputLangChangeRequestEvent.cs
- StringArrayConverter.cs
- _HeaderInfo.cs
- CodeArrayCreateExpression.cs
- Highlights.cs
- BitmapEffectvisualstate.cs
- DateTimeParse.cs
- RectangleHotSpot.cs
- AutomationElementIdentifiers.cs
- AttributeParameterInfo.cs
- ListChangedEventArgs.cs
- safemediahandle.cs
- Span.cs
- CheckBox.cs
- SafeMemoryMappedFileHandle.cs
- NodeFunctions.cs
- DiscoveryClientReferences.cs
- StandardBindingImporter.cs
- DesignerRegionMouseEventArgs.cs
- EntityContainer.cs
- TagMapInfo.cs
- PointCollectionConverter.cs
- FormsAuthenticationModule.cs
- GenericPrincipal.cs
- OutputScopeManager.cs
- NameValueSectionHandler.cs
- Form.cs
- RoutingConfiguration.cs
- DbInsertCommandTree.cs
- GridViewDeleteEventArgs.cs
- ISFClipboardData.cs
- SmiContext.cs
- HashRepartitionStream.cs
- FrameworkTextComposition.cs
- StringOutput.cs
- CompatibleIComparer.cs
- SynchronizationContext.cs
- XmlSchemaFacet.cs
- VisualProxy.cs
- MultiAsyncResult.cs