tabpagecollectioneditor.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 / tabpagecollectioneditor.cs / 1 / tabpagecollectioneditor.cs

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

/* 
 */ 

[assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode", Scope="member", Target="System.Windows.Forms.Design.TabPageCollectionEditor..ctor()")] 


namespace System.Windows.Forms.Design {
 
    using System;
    using System.Drawing; 
    using System.Collections; 
    using System.ComponentModel;
    using System.ComponentModel.Design; 
    using System.Windows.Forms;
    using System.Data;
    using System.Drawing.Design;
    using System.Diagnostics; 
    using System.Design;
    using System.Windows.Forms.Layout; 
 
    /// 
    /// Main class for collection editor for TabPageCollection.  Allows a single level of ToolStripItem children to be designed. 
    /// 
    internal class TabPageCollectionEditor : CollectionEditor
    {
 
        /// 
        /// Default contstructor. 
        ///  
        public TabPageCollectionEditor() : base(typeof(TabControl.TabPageCollection)) {
        } 

        /// 
        /// 
        ///     
        ///       Sets
        ///       the specified collection to have the specified array of items. 
        ///     
        /// 
        protected override object SetItems(object editValue, object[] value) { 

            TabControl tc = this.Context.Instance as TabControl;
            if (tc != null) {
                tc.SuspendLayout(); 
            }
            // Set the UseVisualStyleBackColor for all the tabPages added through the collectionEditor. 
            foreach (object tab in value) 
            {
                TabPage page = tab as TabPage; 
                if (page != null)
                {
                    PropertyDescriptor styleProp = TypeDescriptor.GetProperties(page)["UseVisualStyleBackColor"];
                    if (styleProp != null && styleProp.PropertyType == typeof(bool) && !styleProp.IsReadOnly && styleProp.IsBrowsable) 
                    {
                        styleProp.SetValue(page, true); 
                    } 
                }
            } 
            object retValue = base.SetItems(editValue, value);

            if (tc != null) {
                tc.ResumeLayout(); 
            }
 
 
            return retValue;
        } 

    }
}
 

 

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