Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / ndp / fx / src / CompMod / System / ComponentModel / EditorAttribute.cs / 1 / EditorAttribute.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- /* */ namespace System.ComponentModel { using System.Diagnostics; using System.Globalization; using System.Security.Permissions; ////// [AttributeUsage(AttributeTargets.All, AllowMultiple = true, Inherited = true)] public sealed class EditorAttribute : Attribute { private string baseTypeName; private string typeName; private string typeId; ///Specifies the editor to use to change a property. This class cannot be inherited. ////// public EditorAttribute() { this.typeName = string.Empty; this.baseTypeName = string.Empty; } ///Initializes a new instance of the ///class with the default editor, which is /// no editor. /// public EditorAttribute(string typeName, string baseTypeName) { string temp = typeName.ToUpper(CultureInfo.InvariantCulture); Debug.Assert(temp.IndexOf(".DLL") == -1, "Came across: " + typeName + " . Please remove the .dll extension"); this.typeName = typeName; this.baseTypeName = baseTypeName; } ///Initializes a new instance of the ///class with the type name and base type /// name of the editor. /// public EditorAttribute(string typeName, Type baseType) { string temp = typeName.ToUpper(CultureInfo.InvariantCulture); Debug.Assert(temp.IndexOf(".DLL") == -1, "Came across: " + typeName + " . Please remove the .dll extension"); this.typeName = typeName; this.baseTypeName = baseType.AssemblyQualifiedName; } ///Initializes a new instance of the ///class. /// public EditorAttribute(Type type, Type baseType) { this.typeName = type.AssemblyQualifiedName; this.baseTypeName = baseType.AssemblyQualifiedName; } ///Initializes a new instance of the ////// class. /// public string EditorBaseTypeName { get { return baseTypeName; } } ///Gets the name of the base class or interface serving as a lookup key for this editor. ////// public string EditorTypeName { get { return typeName; } } ///Gets the name of the editor class. ////// /// public override object TypeId { get { if (typeId == null) { string baseType = baseTypeName; int comma = baseType.IndexOf(','); if (comma != -1) { baseType = baseType.Substring(0, comma); } typeId = GetType().FullName + baseType; } return typeId; } } public override bool Equals(object obj) { if (obj == this) { return true; } EditorAttribute other = obj as EditorAttribute; return (other != null) && other.typeName == typeName && other.baseTypeName == baseTypeName; } public override int GetHashCode() { return base.GetHashCode(); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ ///// This defines a unique ID for this attribute type. It is used /// by filtering algorithms to identify two attributes that are /// the same type. For most attributes, this just returns the /// Type instance for the attribute. EditorAttribute overrides /// this to include the type of the editor base type. /// ///// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- /* */ namespace System.ComponentModel { using System.Diagnostics; using System.Globalization; using System.Security.Permissions; ////// [AttributeUsage(AttributeTargets.All, AllowMultiple = true, Inherited = true)] public sealed class EditorAttribute : Attribute { private string baseTypeName; private string typeName; private string typeId; ///Specifies the editor to use to change a property. This class cannot be inherited. ////// public EditorAttribute() { this.typeName = string.Empty; this.baseTypeName = string.Empty; } ///Initializes a new instance of the ///class with the default editor, which is /// no editor. /// public EditorAttribute(string typeName, string baseTypeName) { string temp = typeName.ToUpper(CultureInfo.InvariantCulture); Debug.Assert(temp.IndexOf(".DLL") == -1, "Came across: " + typeName + " . Please remove the .dll extension"); this.typeName = typeName; this.baseTypeName = baseTypeName; } ///Initializes a new instance of the ///class with the type name and base type /// name of the editor. /// public EditorAttribute(string typeName, Type baseType) { string temp = typeName.ToUpper(CultureInfo.InvariantCulture); Debug.Assert(temp.IndexOf(".DLL") == -1, "Came across: " + typeName + " . Please remove the .dll extension"); this.typeName = typeName; this.baseTypeName = baseType.AssemblyQualifiedName; } ///Initializes a new instance of the ///class. /// public EditorAttribute(Type type, Type baseType) { this.typeName = type.AssemblyQualifiedName; this.baseTypeName = baseType.AssemblyQualifiedName; } ///Initializes a new instance of the ////// class. /// public string EditorBaseTypeName { get { return baseTypeName; } } ///Gets the name of the base class or interface serving as a lookup key for this editor. ////// public string EditorTypeName { get { return typeName; } } ///Gets the name of the editor class. ////// /// public override object TypeId { get { if (typeId == null) { string baseType = baseTypeName; int comma = baseType.IndexOf(','); if (comma != -1) { baseType = baseType.Substring(0, comma); } typeId = GetType().FullName + baseType; } return typeId; } } public override bool Equals(object obj) { if (obj == this) { return true; } EditorAttribute other = obj as EditorAttribute; return (other != null) && other.typeName == typeName && other.baseTypeName == baseTypeName; } public override int GetHashCode() { return base.GetHashCode(); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007./// This defines a unique ID for this attribute type. It is used /// by filtering algorithms to identify two attributes that are /// the same type. For most attributes, this just returns the /// Type instance for the attribute. EditorAttribute overrides /// this to include the type of the editor base type. /// ///
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ITextView.cs
- DataControlHelper.cs
- DataGridViewCellCancelEventArgs.cs
- ButtonField.cs
- XmlCustomFormatter.cs
- TemplateControlBuildProvider.cs
- UDPClient.cs
- XmlSerializationGeneratedCode.cs
- XPathDocumentNavigator.cs
- TableHeaderCell.cs
- ColorEditor.cs
- XamlSerializer.cs
- DataKeyArray.cs
- ToolStripDropDownDesigner.cs
- TypeUtil.cs
- XmlDictionary.cs
- EntityDataSourceSelectingEventArgs.cs
- BulletDecorator.cs
- SqlDataSourceQueryEditor.cs
- CompressionTransform.cs
- ActivityCodeDomSerializationManager.cs
- Point4D.cs
- Italic.cs
- PointLight.cs
- WorkflowApplicationException.cs
- ComponentEditorForm.cs
- Action.cs
- TypeEnumerableViewSchema.cs
- ShaderEffect.cs
- AccessText.cs
- DictionaryTraceRecord.cs
- TreeNodeStyleCollection.cs
- RuntimeHelpers.cs
- Expressions.cs
- ExtendedTransformFactory.cs
- MatrixCamera.cs
- BufferBuilder.cs
- Label.cs
- SByteStorage.cs
- RequestQueryProcessor.cs
- ViewKeyConstraint.cs
- ListViewDeleteEventArgs.cs
- RSACryptoServiceProvider.cs
- DbUpdateCommandTree.cs
- DynamicILGenerator.cs
- TextureBrush.cs
- Profiler.cs
- DateRangeEvent.cs
- MethodBuilderInstantiation.cs
- SystemIPInterfaceProperties.cs
- NullableDoubleMinMaxAggregationOperator.cs
- XmlnsPrefixAttribute.cs
- Binding.cs
- DateTimeFormatInfoScanner.cs
- ReliableInputConnection.cs
- KeyValueInternalCollection.cs
- CodeCommentStatementCollection.cs
- ISCIIEncoding.cs
- TimeManager.cs
- _LoggingObject.cs
- DataGridViewRowPrePaintEventArgs.cs
- Brushes.cs
- SimpleWorkerRequest.cs
- DataBindEngine.cs
- ClientSettingsStore.cs
- UnknownBitmapDecoder.cs
- ScrollChrome.cs
- WorkflowDesignerMessageFilter.cs
- NativeMethods.cs
- TextElementEnumerator.cs
- ServerValidateEventArgs.cs
- DataBindEngine.cs
- BehaviorEditorPart.cs
- DecimalKeyFrameCollection.cs
- DataGridColumnHeaderAutomationPeer.cs
- HostVisual.cs
- ExplicitDiscriminatorMap.cs
- FixedSOMLineRanges.cs
- RegistryPermission.cs
- DBSqlParserTable.cs
- TextRange.cs
- TypeSystem.cs
- TransactedBatchContext.cs
- HttpCachePolicy.cs
- ProjectionNode.cs
- ThaiBuddhistCalendar.cs
- CodeDOMUtility.cs
- ReverseInheritProperty.cs
- FunctionDefinition.cs
- SimpleNameService.cs
- _DigestClient.cs
- Point3DValueSerializer.cs
- PointKeyFrameCollection.cs
- StructuredTypeEmitter.cs
- MissingFieldException.cs
- DisplayNameAttribute.cs
- ConfigViewGenerator.cs
- HttpBrowserCapabilitiesWrapper.cs
- DataGridViewIntLinkedList.cs
- SecuritySessionServerSettings.cs