Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / 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
- Binding.cs
- HtmlDocument.cs
- MenuItemCollectionEditorDialog.cs
- Activator.cs
- RSAOAEPKeyExchangeDeformatter.cs
- Config.cs
- EntityContainerEmitter.cs
- HeaderUtility.cs
- Cell.cs
- InternalCache.cs
- base64Transforms.cs
- BitmapFrameEncode.cs
- SecurityTokenProvider.cs
- SizeAnimationBase.cs
- ValueType.cs
- RIPEMD160.cs
- QilExpression.cs
- Matrix3DConverter.cs
- SafeArrayRankMismatchException.cs
- MessagingDescriptionAttribute.cs
- QilBinary.cs
- SmiEventSink.cs
- Axis.cs
- CallbackHandler.cs
- VersionedStream.cs
- XmlResolver.cs
- DownloadProgressEventArgs.cs
- RadioButtonStandardAdapter.cs
- DocumentGridContextMenu.cs
- TextServicesLoader.cs
- uribuilder.cs
- util.cs
- HttpRequest.cs
- ElementUtil.cs
- TraceLog.cs
- OneWayBindingElementImporter.cs
- PersistenceTypeAttribute.cs
- SqlDataSourceCommandEventArgs.cs
- EraserBehavior.cs
- OleDbDataReader.cs
- CodeDelegateInvokeExpression.cs
- dbenumerator.cs
- StylesEditorDialog.cs
- BasePropertyDescriptor.cs
- CopyOfAction.cs
- LambdaCompiler.Expressions.cs
- CqlBlock.cs
- BlockCollection.cs
- PathGeometry.cs
- ListSortDescriptionCollection.cs
- SecurityResources.cs
- TextEmbeddedObject.cs
- EdmSchemaError.cs
- CryptographicAttribute.cs
- ToolBarTray.cs
- LongTypeConverter.cs
- HtmlAnchor.cs
- BeginEvent.cs
- ImmutableObjectAttribute.cs
- PLINQETWProvider.cs
- DotNetATv1WindowsLogEntryDeserializer.cs
- FragmentNavigationEventArgs.cs
- HyperLinkField.cs
- ReachSerializationUtils.cs
- CellNormalizer.cs
- PasswordRecoveryDesigner.cs
- ByteStream.cs
- SqlAggregateChecker.cs
- ConditionalDesigner.cs
- CalloutQueueItem.cs
- SequentialWorkflowRootDesigner.cs
- HttpCookie.cs
- AsymmetricSignatureDeformatter.cs
- XPathPatternParser.cs
- NavigationCommands.cs
- DecryptedHeader.cs
- ListViewGroupItemCollection.cs
- ScalarType.cs
- MaterialCollection.cs
- InputMethodStateChangeEventArgs.cs
- UnsafeNativeMethodsPenimc.cs
- HttpHandlerAction.cs
- Utils.cs
- DataSetSchema.cs
- TreeView.cs
- SqlRetyper.cs
- SaveFileDialog.cs
- AllMembershipCondition.cs
- ContentValidator.cs
- HtmlElementEventArgs.cs
- CodeGenerator.cs
- Viewport2DVisual3D.cs
- Misc.cs
- XMLDiffLoader.cs
- nulltextcontainer.cs
- IdentityNotMappedException.cs
- HierarchicalDataTemplate.cs
- BaseTemplateBuildProvider.cs
- DataGridViewAutoSizeModeEventArgs.cs
- AssertSection.cs