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
- ThemeInfoAttribute.cs
- PerspectiveCamera.cs
- ProtectedConfiguration.cs
- CustomTypeDescriptor.cs
- TableAutomationPeer.cs
- Latin1Encoding.cs
- SqlTypeConverter.cs
- PackageProperties.cs
- FixedPageStructure.cs
- clipboard.cs
- DataTableCollection.cs
- DrawingGroupDrawingContext.cs
- UnmanagedMarshal.cs
- InfoCardTraceRecord.cs
- ToolStripTextBox.cs
- ToolStripItemTextRenderEventArgs.cs
- NumberAction.cs
- StyleBamlRecordReader.cs
- DeviceContexts.cs
- UpdatePanelTriggerCollection.cs
- WebZone.cs
- CompositeScriptReferenceEventArgs.cs
- GrammarBuilderRuleRef.cs
- ReachFixedDocumentSerializerAsync.cs
- HashHelpers.cs
- ApplicationHost.cs
- GeometryCollection.cs
- TreeIterator.cs
- WebScriptMetadataFormatter.cs
- BinaryExpression.cs
- TextPattern.cs
- ByteConverter.cs
- WizardPanel.cs
- brushes.cs
- Int32RectValueSerializer.cs
- LineProperties.cs
- StrongName.cs
- LockCookie.cs
- SQLByteStorage.cs
- SchemaDeclBase.cs
- XmlDataSourceNodeDescriptor.cs
- AddInToken.cs
- FirstQueryOperator.cs
- PrivateFontCollection.cs
- WorkflowTransactionService.cs
- SessionEndingCancelEventArgs.cs
- FileCodeGroup.cs
- LiteralTextContainerControlBuilder.cs
- VersionUtil.cs
- XmlObjectSerializerWriteContext.cs
- RelationshipEnd.cs
- CommonEndpointBehaviorElement.cs
- CapabilitiesRule.cs
- StylusLogic.cs
- PackageRelationship.cs
- BitmapPalettes.cs
- ClientSettingsSection.cs
- CompensationToken.cs
- PrePrepareMethodAttribute.cs
- WinEventQueueItem.cs
- RelationshipEndMember.cs
- ObjectListFieldCollection.cs
- QilGenerator.cs
- DataComponentNameHandler.cs
- PropertyChangeTracker.cs
- SuppressIldasmAttribute.cs
- FederatedMessageSecurityOverHttpElement.cs
- KeyToListMap.cs
- ListViewDeletedEventArgs.cs
- Point3DCollectionConverter.cs
- MobileUserControl.cs
- EventDescriptor.cs
- NamespaceInfo.cs
- MessageDesigner.cs
- BuildProvidersCompiler.cs
- WebPartPersonalization.cs
- Message.cs
- CapabilitiesSection.cs
- TagMapCollection.cs
- CodeTypeOfExpression.cs
- ShapingWorkspace.cs
- ErrorHandler.cs
- XmlWellformedWriter.cs
- TextEditorDragDrop.cs
- OrCondition.cs
- SourceChangedEventArgs.cs
- TransactionInformation.cs
- FileDetails.cs
- FileEnumerator.cs
- WeakEventManager.cs
- remotingproxy.cs
- RadioButtonAutomationPeer.cs
- Trigger.cs
- DrawTreeNodeEventArgs.cs
- TdsParameterSetter.cs
- StateMachineSubscriptionManager.cs
- NativeMethods.cs
- Win32PrintDialog.cs
- _ConnectOverlappedAsyncResult.cs
- HttpListenerContext.cs