MergablePropertyAttribute.cs source code in C# .NET

Source code for the .NET framework in C#

                        

Code:

/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / CompMod / System / ComponentModel / MergablePropertyAttribute.cs / 1 / MergablePropertyAttribute.cs

                            //------------------------------------------------------------------------------ 
// 
//     Copyright (c) Microsoft Corporation.  All rights reserved.
// 
//----------------------------------------------------------------------------- 

/* 
 */ 
namespace System.ComponentModel {
    using System; 
    using System.ComponentModel;
    using System.Diagnostics;
    using System.Security.Permissions;
 
    /// 
    ///    Specifies that 
    ///       this property can be combined with properties belonging to 
    ///       other objects in a properties window.
    ///  
    [AttributeUsage(AttributeTargets.All)]
    public sealed class MergablePropertyAttribute : Attribute {

        ///  
        ///    
        ///       Specifies that a property can be combined with properties belonging to other 
        ///       objects in a properties window. This field is read-only. 
        ///    
        ///  
        public static readonly MergablePropertyAttribute Yes = new MergablePropertyAttribute(true);

        /// 
        ///     
        ///       Specifies that a property cannot be combined with properties belonging to
        ///       other objects in a properties window. This field is 
        ///       read-only. 
        ///    
        ///  
        public static readonly MergablePropertyAttribute No = new MergablePropertyAttribute(false);

        /// 
        ///     
        ///       Specifies the default value, which is , that is a property can be combined with
        ///       properties belonging to other objects in a properties window. This field is read-only. 
        ///     
        /// 
        public static readonly MergablePropertyAttribute Default = Yes; 

        private bool allowMerge;

        ///  
        ///    
        ///       Initializes a new instance of the  
        ///       class. 
        ///    
        ///  
        public MergablePropertyAttribute(bool allowMerge) {
            this.allowMerge = allowMerge;
        }
 
        /// 
        ///     
        ///       Gets a value indicating whether this 
        ///       property can be combined with properties belonging to other objects in a
        ///       properties window. 
        ///    
        /// 
        public bool AllowMerge {
            get { 
                return allowMerge;
            } 
        } 

        ///  
        /// 
        /// 
        public override bool Equals(object obj) {
            if (obj == this) { 
                return true;
            } 
 
            MergablePropertyAttribute other = obj as MergablePropertyAttribute;
            return other != null && other.AllowMerge == this.allowMerge; 
        }

        /// 
        ///     
        ///       Returns the hashcode for this object.
        ///     
        ///  
        public override int GetHashCode() {
            return base.GetHashCode(); 
        }

        /// 
        ///  
        /// 
        public override bool IsDefaultAttribute() { 
            return (this.Equals(Default)); 
        }
    } 
}


                        

Link Menu

Network programming in C#, Network Programming in VB.NET, Network Programming in .NET
This book is available now!
Buy at Amazon US or
Buy at Amazon UK