BooleanSwitch.cs source code in C# .NET

Source code for the .NET framework in C#

                        

Code:

/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / CompMod / System / Diagnostics / BooleanSwitch.cs / 1305376 / BooleanSwitch.cs

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

/* 
 */ 

namespace System.Diagnostics { 
    using System.Diagnostics;
    using System;
    using System.Security;
    using System.Security.Permissions; 

    ///  
    ///    Provides a simple on/off switch that can be used to control debugging and tracing 
    ///       output.
    ///  
    [SwitchLevel(typeof(bool))]
    public class BooleanSwitch : Switch {
        /// 
        /// Initializes a new instance of the  
        /// class.
        ///  
        public BooleanSwitch(string displayName, string description) 
            : base(displayName, description) {
        } 

        public BooleanSwitch(string displayName, string description, string defaultSwitchValue)
            : base(displayName, description, defaultSwitchValue) { }
 
        /// 
        ///    Specifies whether the switch is enabled 
        ///       () or disabled (). 
        /// 
        public bool Enabled { 
            get {
                return (SwitchSetting == 0) ? false : true;
            }
            [SecurityPermission(SecurityAction.LinkDemand, Flags=SecurityPermissionFlag.UnmanagedCode)] 
            set {
                SwitchSetting = value ? 1 : 0; 
            } 
        }
 
        protected override void OnValueChanged() {
            bool b;
            if (Boolean.TryParse(Value, out b))
                SwitchSetting = ( b ? 1 : 0); 
            else
                base.OnValueChanged(); 
        } 
    }
} 


// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
//------------------------------------------------------------------------------ 
// 
//     Copyright (c) Microsoft Corporation.  All rights reserved.
// 
//----------------------------------------------------------------------------- 

/* 
 */ 

namespace System.Diagnostics { 
    using System.Diagnostics;
    using System;
    using System.Security;
    using System.Security.Permissions; 

    ///  
    ///    Provides a simple on/off switch that can be used to control debugging and tracing 
    ///       output.
    ///  
    [SwitchLevel(typeof(bool))]
    public class BooleanSwitch : Switch {
        /// 
        /// Initializes a new instance of the  
        /// class.
        ///  
        public BooleanSwitch(string displayName, string description) 
            : base(displayName, description) {
        } 

        public BooleanSwitch(string displayName, string description, string defaultSwitchValue)
            : base(displayName, description, defaultSwitchValue) { }
 
        /// 
        ///    Specifies whether the switch is enabled 
        ///       () or disabled (). 
        /// 
        public bool Enabled { 
            get {
                return (SwitchSetting == 0) ? false : true;
            }
            [SecurityPermission(SecurityAction.LinkDemand, Flags=SecurityPermissionFlag.UnmanagedCode)] 
            set {
                SwitchSetting = value ? 1 : 0; 
            } 
        }
 
        protected override void OnValueChanged() {
            bool b;
            if (Boolean.TryParse(Value, out b))
                SwitchSetting = ( b ? 1 : 0); 
            else
                base.OnValueChanged(); 
        } 
    }
} 


// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
                        

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