ToolBarDesigner.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 / Designer / WinForms / System / WinForms / Design / ToolBarDesigner.cs / 1 / ToolBarDesigner.cs

                            //------------------------------------------------------------------------------
// 
//     Copyright (c) Microsoft Corporation.  All rights reserved.
//  
//-----------------------------------------------------------------------------
 
/* 
 */
 
[assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode", Scope="member", Target="System.Windows.Forms.Design.ToolBarDesigner..ctor()")]

namespace System.Windows.Forms.Design {
 
    using System.Runtime.InteropServices;
    using System.ComponentModel; 
    using System.Diagnostics; 
    using System;
    using System.ComponentModel.Design; 
    using System.Windows.Forms;
    using System.Collections;

    ///  
    ///      This class handles all design time behavior for the status bar class.
    ///  
    internal class ToolBarDesigner : ControlDesigner { 

        public ToolBarDesigner() { 
            AutoResizeHandles = true;
        }

        ///  
        /// 
        ///     
        ///       Retrieves a list of associated components.  These are components that should be incluced in a cut or copy operation on this component. 
        ///    
        ///  
        public override ICollection AssociatedComponents{
            get {
                ToolBar tb = Control as ToolBar;
                if (tb != null) { 
                    return tb.Buttons;
                } 
                return base.AssociatedComponents; 
            }
        } 

        /// 
        /// 
        ///     Retrieves a set of rules concerning the movement capabilities of a component. 
        ///     This should be one or more flags from the SelectionRules class.  If no designer
        ///     provides rules for a component, the component will not get any UI services. 
        ///  
        public override SelectionRules SelectionRules {
            get { 
                SelectionRules rules = base.SelectionRules;
                object component = Component;

                PropertyDescriptor propDock = TypeDescriptor.GetProperties(component)["Dock"]; 
                PropertyDescriptor propAutoSize = TypeDescriptor.GetProperties(component)["AutoSize"];
                if (propDock != null && propAutoSize != null) { 
                    DockStyle dock = (DockStyle)propDock.GetValue(component); 
                    bool autoSize = (bool)propAutoSize.GetValue(component);
                    if (autoSize) { 
                        rules &= ~(SelectionRules.TopSizeable | SelectionRules.BottomSizeable);
                        if (dock != DockStyle.None) {
                            rules &= ~SelectionRules.AllSizeable;
                        } 
                    }
                } 
                return rules; 
            }
        } 
    }

}

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

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