TableHeaderCell.cs source code in C# .NET

Source code for the .NET framework in C#

                        

Code:

/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / ndp / fx / src / xsp / System / Web / UI / WebControls / TableHeaderCell.cs / 1 / TableHeaderCell.cs

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

// TableHeaderCell.cs 
// 

namespace System.Web.UI.WebControls { 

    using System;
    using System.Text;
    using System.ComponentModel; 
    using System.Globalization;
    using System.Web; 
    using System.Web.UI; 
    using System.Security.Permissions;
 

    /// 
    ///     Encapsulates
    ///       a header cell within a table. 
    /// 
    [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] 
    [AspNetHostingPermission(SecurityAction.InheritanceDemand, Level=AspNetHostingPermissionLevel.Minimal)] 
    public class TableHeaderCell : TableCell {
 

        /// 
        ///    
        ///       Initializes a new instance of the  class. 
        ///    
        ///  
        public TableHeaderCell() : base(HtmlTextWriterTag.Th) { 
        }
 

        /// 
        ///    
        ///     Sets the abbreviated text for a header cell. The abbreviated text 
        ///     is rendered with the HTML ABBR attribute. The ABBR attribute is important
        ///     for screen readers since it allows them to read a shortened version of a header for each cell in the table. 
        ///      
        /// 
        [ 
        WebCategory("Accessibility"),
        DefaultValue(""),
        WebSysDescription(SR.TableHeaderCell_AbbreviatedText)
        ] 
        public virtual string AbbreviatedText {
            get { 
                object x = ViewState["AbbrText"]; 
                return((x == null) ? String.Empty : (string)x);
            } 
            set {
                ViewState["AbbrText"] = value;
            }
        } 

 
        ///  
        ///    
        ///     Represents the cells that the header applies to. Renders the HTML scope attribute. Possible values are from the TableHeaderScope enumeration: Column and Row. 
        ///    
        /// 
        [
        WebCategory("Accessibility"), 
        DefaultValue(TableHeaderScope.NotSet),
        WebSysDescription(SR.TableHeaderCell_Scope) 
        ] 
        public virtual TableHeaderScope Scope {
            get { 
                object x = ViewState["Scope"];
                return((x == null) ? TableHeaderScope.NotSet : (TableHeaderScope)x);
            }
            set { 
                ViewState["Scope"] = value;
            } 
        } 

 
        /// 
        ///    
        ///     Contains a list of categories associated with the table header (read by screen readers). The categories can be any string values. The categories are rendered as a comma delimited list using the HTML axis attribute.
        ///     
        /// 
        [ 
        DefaultValue(null), 
        TypeConverterAttribute(typeof(StringArrayConverter)),
        WebCategory("Accessibility"), 
        WebSysDescription(SR.TableHeaderCell_CategoryText)
        ]
        public virtual string[] CategoryText {
            get { 
                object x = ViewState["CategoryText"];
                return (x != null) ? (string[])((string[])x).Clone() : new string[0]; 
            } 
            set {
                if (value != null) { 
                    ViewState["CategoryText"] = (string[])value.Clone();
                }
                else {
                    ViewState["CategoryText"] = null; 
                }
            } 
        } 

 
        /// 
        /// 
        ///    Adds header cell attributes to the list of attributes to render.
        ///  
        protected override void AddAttributesToRender(HtmlTextWriter writer) {
            base.AddAttributesToRender(writer); 
            TableHeaderScope scope = Scope; 
            if (scope != TableHeaderScope.NotSet) {
                writer.AddAttribute(HtmlTextWriterAttribute.Scope, scope.ToString().ToLowerInvariant()); 
            }

            String abbr = AbbreviatedText;
            if (!String.IsNullOrEmpty(abbr)) { 
                writer.AddAttribute(HtmlTextWriterAttribute.Abbr, abbr);
            } 
 
            string[] arr = CategoryText;
            if (arr.Length > 0) { 
                bool first = true;
                StringBuilder builder = new StringBuilder();
                foreach (string s in arr) {
                    if (first) { 
                        first = false;
                    } 
                    else { 
                        builder.Append(",");
                    } 
                    builder.Append(s);
                }
                string val = builder.ToString();
                if (!String.IsNullOrEmpty(val)) { 
                    writer.AddAttribute(HtmlTextWriterAttribute.Axis, val);
                } 
            } 
        }
    } 
}

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

// TableHeaderCell.cs 
// 

namespace System.Web.UI.WebControls { 

    using System;
    using System.Text;
    using System.ComponentModel; 
    using System.Globalization;
    using System.Web; 
    using System.Web.UI; 
    using System.Security.Permissions;
 

    /// 
    ///     Encapsulates
    ///       a header cell within a table. 
    /// 
    [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] 
    [AspNetHostingPermission(SecurityAction.InheritanceDemand, Level=AspNetHostingPermissionLevel.Minimal)] 
    public class TableHeaderCell : TableCell {
 

        /// 
        ///    
        ///       Initializes a new instance of the  class. 
        ///    
        ///  
        public TableHeaderCell() : base(HtmlTextWriterTag.Th) { 
        }
 

        /// 
        ///    
        ///     Sets the abbreviated text for a header cell. The abbreviated text 
        ///     is rendered with the HTML ABBR attribute. The ABBR attribute is important
        ///     for screen readers since it allows them to read a shortened version of a header for each cell in the table. 
        ///      
        /// 
        [ 
        WebCategory("Accessibility"),
        DefaultValue(""),
        WebSysDescription(SR.TableHeaderCell_AbbreviatedText)
        ] 
        public virtual string AbbreviatedText {
            get { 
                object x = ViewState["AbbrText"]; 
                return((x == null) ? String.Empty : (string)x);
            } 
            set {
                ViewState["AbbrText"] = value;
            }
        } 

 
        ///  
        ///    
        ///     Represents the cells that the header applies to. Renders the HTML scope attribute. Possible values are from the TableHeaderScope enumeration: Column and Row. 
        ///    
        /// 
        [
        WebCategory("Accessibility"), 
        DefaultValue(TableHeaderScope.NotSet),
        WebSysDescription(SR.TableHeaderCell_Scope) 
        ] 
        public virtual TableHeaderScope Scope {
            get { 
                object x = ViewState["Scope"];
                return((x == null) ? TableHeaderScope.NotSet : (TableHeaderScope)x);
            }
            set { 
                ViewState["Scope"] = value;
            } 
        } 

 
        /// 
        ///    
        ///     Contains a list of categories associated with the table header (read by screen readers). The categories can be any string values. The categories are rendered as a comma delimited list using the HTML axis attribute.
        ///     
        /// 
        [ 
        DefaultValue(null), 
        TypeConverterAttribute(typeof(StringArrayConverter)),
        WebCategory("Accessibility"), 
        WebSysDescription(SR.TableHeaderCell_CategoryText)
        ]
        public virtual string[] CategoryText {
            get { 
                object x = ViewState["CategoryText"];
                return (x != null) ? (string[])((string[])x).Clone() : new string[0]; 
            } 
            set {
                if (value != null) { 
                    ViewState["CategoryText"] = (string[])value.Clone();
                }
                else {
                    ViewState["CategoryText"] = null; 
                }
            } 
        } 

 
        /// 
        /// 
        ///    Adds header cell attributes to the list of attributes to render.
        ///  
        protected override void AddAttributesToRender(HtmlTextWriter writer) {
            base.AddAttributesToRender(writer); 
            TableHeaderScope scope = Scope; 
            if (scope != TableHeaderScope.NotSet) {
                writer.AddAttribute(HtmlTextWriterAttribute.Scope, scope.ToString().ToLowerInvariant()); 
            }

            String abbr = AbbreviatedText;
            if (!String.IsNullOrEmpty(abbr)) { 
                writer.AddAttribute(HtmlTextWriterAttribute.Abbr, abbr);
            } 
 
            string[] arr = CategoryText;
            if (arr.Length > 0) { 
                bool first = true;
                StringBuilder builder = new StringBuilder();
                foreach (string s in arr) {
                    if (first) { 
                        first = false;
                    } 
                    else { 
                        builder.Append(",");
                    } 
                    builder.Append(s);
                }
                string val = builder.ToString();
                if (!String.IsNullOrEmpty(val)) { 
                    writer.AddAttribute(HtmlTextWriterAttribute.Axis, val);
                } 
            } 
        }
    } 
}

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