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
- ContourSegment.cs
- DataControlFieldCell.cs
- Point3DKeyFrameCollection.cs
- SafeThemeHandle.cs
- EntityStoreSchemaFilterEntry.cs
- NotifyCollectionChangedEventArgs.cs
- DropSourceBehavior.cs
- UInt16Converter.cs
- RelatedImageListAttribute.cs
- CodeActivity.cs
- Menu.cs
- SmiContextFactory.cs
- SimpleBitVector32.cs
- AssemblyUtil.cs
- AdPostCacheSubstitution.cs
- ExtentCqlBlock.cs
- XsdBuilder.cs
- PolyLineSegment.cs
- SortQuery.cs
- SmtpMail.cs
- OutputCacheSettingsSection.cs
- RadioButton.cs
- CollectionBase.cs
- TemplateEditingVerb.cs
- SqlProfileProvider.cs
- TaskCanceledException.cs
- SHA256Managed.cs
- ActiveXMessageFormatter.cs
- APCustomTypeDescriptor.cs
- SqlXml.cs
- DataGridViewButtonCell.cs
- Trustee.cs
- ContainerUtilities.cs
- MenuItem.cs
- ImmutablePropertyDescriptorGridEntry.cs
- Scene3D.cs
- SqlBuilder.cs
- DataSetMappper.cs
- DBAsyncResult.cs
- Label.cs
- XmlUnspecifiedAttribute.cs
- BindingsCollection.cs
- SecurityPermission.cs
- ToolStripActionList.cs
- ExtensionQuery.cs
- HwndSourceKeyboardInputSite.cs
- AvTrace.cs
- SqlDataReader.cs
- DBCSCodePageEncoding.cs
- HtmlInputReset.cs
- HtmlTable.cs
- AbstractSvcMapFileLoader.cs
- GuidConverter.cs
- SecurityListenerSettingsLifetimeManager.cs
- PreviewKeyDownEventArgs.cs
- DaylightTime.cs
- TempFiles.cs
- Stopwatch.cs
- ObjectDataSourceView.cs
- TwoPhaseCommitProxy.cs
- DefaultMemberAttribute.cs
- RadioButtonFlatAdapter.cs
- WinInetCache.cs
- EntityDataSourceWrapper.cs
- Operators.cs
- PeerApplicationLaunchInfo.cs
- WebPartsPersonalizationAuthorization.cs
- ApplicationFileParser.cs
- AlternationConverter.cs
- JavascriptCallbackResponseProperty.cs
- TextWriterTraceListener.cs
- HttpResponseBase.cs
- SafeFileMappingHandle.cs
- SkinBuilder.cs
- XmlNodeChangedEventManager.cs
- ResourceProviderFactory.cs
- TriggerCollection.cs
- Process.cs
- PropertyManager.cs
- Catch.cs
- TimeIntervalCollection.cs
- PixelFormatConverter.cs
- Sorting.cs
- ZipIOBlockManager.cs
- XmlSchemaInfo.cs
- DeviceOverridableAttribute.cs
- CollectionChangedEventManager.cs
- BuilderPropertyEntry.cs
- ChannelDispatcher.cs
- TypeValidationEventArgs.cs
- _ConnectStream.cs
- SimpleApplicationHost.cs
- TextFindEngine.cs
- TextBlock.cs
- SignatureGenerator.cs
- BindingExpressionBase.cs
- ToolStripRendererSwitcher.cs
- DictionaryBase.cs
- HexParser.cs
- FileChangeNotifier.cs