Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / Services / Monitoring / system / Diagnosticts / Design / StringDictionaryEditor.cs / 1 / StringDictionaryEditor.cs
namespace System.Diagnostics.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.Drawing.Design; using System.Windows.Forms.ComponentModel; using System.Windows.Forms.Design; using System.Collections.Specialized; using System.Design; internal class EditableDictionaryEntry { public string _name; public string _value; public EditableDictionaryEntry(string name, string value) { _name = name; _value = value; } public string Name { get { return _name; } set { _name = value; } } public string Value { get { return _value; } set { _value = value; } } } internal class StringDictionaryEditor : CollectionEditor { public StringDictionaryEditor(Type type) : base(type) {} protected override Type CreateCollectionItemType() { return typeof(EditableDictionaryEntry); } protected override object CreateInstance(Type itemType) { return new EditableDictionaryEntry("name", "value"); } protected override object SetItems(object editValue, object[] value) { StringDictionary dictionary = editValue as StringDictionary; if (dictionary == null) { throw new ArgumentNullException("editValue"); } dictionary.Clear(); foreach (EditableDictionaryEntry entry in value) { dictionary[entry.Name] = entry.Value; } return dictionary; } protected override object[] GetItems(object editValue) { if (editValue != null) { StringDictionary dictionary = editValue as StringDictionary; if (dictionary == null) { throw new ArgumentNullException("editValue"); } object[] ret = new object[dictionary.Count]; int pos = 0; foreach (DictionaryEntry entry in dictionary) { EditableDictionaryEntry newEntry = new EditableDictionaryEntry((string)entry.Key, (string)entry.Value); ret[pos++] = newEntry; } return ret; } return new object[0]; } protected override CollectionForm CreateCollectionForm() { CollectionForm form = base.CreateCollectionForm(); form.Text = SR.GetString(SR.StringDictionaryEditorTitle); form.CollectionEditable = true; return form; } } } // 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
- PrintController.cs
- LocalizableAttribute.cs
- PropertyPath.cs
- TemplateComponentConnector.cs
- TdsEnums.cs
- TraceFilter.cs
- CustomErrorCollection.cs
- FontDifferentiator.cs
- SamlAuthorityBinding.cs
- XamlRtfConverter.cs
- XPathDocumentBuilder.cs
- CharEnumerator.cs
- ExpressionBuilderCollection.cs
- Unit.cs
- MouseActionConverter.cs
- IApplicationTrustManager.cs
- SafeNativeMethods.cs
- ResumeStoryboard.cs
- WinFormsSecurity.cs
- AdRotator.cs
- PropertyDescriptor.cs
- FieldBuilder.cs
- DataGridAddNewRow.cs
- RowSpanVector.cs
- CodeObjectCreateExpression.cs
- CompilerGeneratedAttribute.cs
- FormViewModeEventArgs.cs
- InfiniteIntConverter.cs
- ReferencedAssembly.cs
- PartialList.cs
- PublisherMembershipCondition.cs
- ZipIOBlockManager.cs
- UIElementAutomationPeer.cs
- UnsafeNetInfoNativeMethods.cs
- SimplePropertyEntry.cs
- AppSecurityManager.cs
- WebResponse.cs
- Metadata.cs
- MultiBindingExpression.cs
- EventLogPropertySelector.cs
- InstanceHandleReference.cs
- BitmapMetadata.cs
- BitmapEditor.cs
- AddingNewEventArgs.cs
- RuleInfoComparer.cs
- TreeViewImageIndexConverter.cs
- DataControlFieldHeaderCell.cs
- SequenceRange.cs
- BigInt.cs
- JsonObjectDataContract.cs
- FixedSOMElement.cs
- TemplateBaseAction.cs
- MenuEventArgs.cs
- ConfigurationStrings.cs
- XmlDomTextWriter.cs
- SqlExpander.cs
- TreeIterators.cs
- ChannelBase.cs
- EventLogPermission.cs
- MarkupObject.cs
- FileNameEditor.cs
- WebPartDescriptionCollection.cs
- FileUtil.cs
- smtppermission.cs
- ToggleButton.cs
- DebugViewWriter.cs
- DataGridLinkButton.cs
- DecoderReplacementFallback.cs
- Int64AnimationUsingKeyFrames.cs
- SplineKeyFrames.cs
- HttpServerUtilityBase.cs
- Control.cs
- GetCertificateRequest.cs
- ReferenceService.cs
- Size.cs
- ExtendedPropertyCollection.cs
- ELinqQueryState.cs
- MatrixUtil.cs
- InstanceCollisionException.cs
- _NetRes.cs
- XmlWhitespace.cs
- login.cs
- FunctionDescription.cs
- Quaternion.cs
- SystemResourceKey.cs
- Literal.cs
- TransformDescriptor.cs
- HtmlElementEventArgs.cs
- CurrentChangedEventManager.cs
- XmlSigningNodeWriter.cs
- WebPartManagerInternals.cs
- QueryHandler.cs
- Exceptions.cs
- MediaContext.cs
- GradientBrush.cs
- SerTrace.cs
- Stopwatch.cs
- ComponentResourceKeyConverter.cs
- DataServiceQueryException.cs
- SqlGatherProducedAliases.cs