ConsoleCancelEventArgs.cs source code in C# .NET

Source code for the .NET framework in C#

                        

Code:

/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / ndp / clr / src / BCL / System / ConsoleCancelEventArgs.cs / 1 / ConsoleCancelEventArgs.cs

                            // ==++== 
//
//   Copyright (c) Microsoft Corporation.  All rights reserved.
//
// ==--== 
/*==============================================================================
** 
** Class: ConsoleCancelEventArgs 
**
** 
** Purpose: This class provides support goop for hooking Control-C and
**          Control-Break, then preventing Control-C from interrupting the
**          process.
** 
**
=============================================================================*/ 
namespace System { 
    using System;
 
    public delegate void ConsoleCancelEventHandler(Object sender, ConsoleCancelEventArgs e);


    [Serializable] 
    public sealed class ConsoleCancelEventArgs : EventArgs
    { 
        private ConsoleSpecialKey _type; 
        private bool _cancel;  // Whether to cancel the CancelKeyPress event
 
        internal ConsoleCancelEventArgs(ConsoleSpecialKey type)
        {
            _type = type;
            _cancel = false; 
        }
 
        // Whether to cancel the break event.  By setting this to true, the 
        // Control-C will not kill the process.
        public bool Cancel { 
            get { return _cancel; }
            set {
                if (_type == ConsoleSpecialKey.ControlBreak && value == true)
                    throw new InvalidOperationException(Environment.GetResourceString("InvalidOperation_CantCancelCtrlBreak")); 
                _cancel = value;
            } 
        } 

        public ConsoleSpecialKey SpecialKey { 
            get { return _type; }
        }
    }
} 

// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// ==++== 
//
//   Copyright (c) Microsoft Corporation.  All rights reserved.
//
// ==--== 
/*==============================================================================
** 
** Class: ConsoleCancelEventArgs 
**
** 
** Purpose: This class provides support goop for hooking Control-C and
**          Control-Break, then preventing Control-C from interrupting the
**          process.
** 
**
=============================================================================*/ 
namespace System { 
    using System;
 
    public delegate void ConsoleCancelEventHandler(Object sender, ConsoleCancelEventArgs e);


    [Serializable] 
    public sealed class ConsoleCancelEventArgs : EventArgs
    { 
        private ConsoleSpecialKey _type; 
        private bool _cancel;  // Whether to cancel the CancelKeyPress event
 
        internal ConsoleCancelEventArgs(ConsoleSpecialKey type)
        {
            _type = type;
            _cancel = false; 
        }
 
        // Whether to cancel the break event.  By setting this to true, the 
        // Control-C will not kill the process.
        public bool Cancel { 
            get { return _cancel; }
            set {
                if (_type == ConsoleSpecialKey.ControlBreak && value == true)
                    throw new InvalidOperationException(Environment.GetResourceString("InvalidOperation_CantCancelCtrlBreak")); 
                _cancel = value;
            } 
        } 

        public ConsoleSpecialKey SpecialKey { 
            get { return _type; }
        }
    }
} 

// 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