您好,登錄后才能下訂單哦!
這篇文章主要介紹了為CheckBoxList和RadioButtonList添加滾動條的方法,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
如何給CheckBoxList和RadioButtonList添加滾動條?
繼承基類CheckBoxList和RadioButtonList,添加滾動屬性,重寫Render方法即可。
屬性列表:
#region 滾動控制 private bool _ShowScrollBar = false; /// <summary> /// 顯示滾動條 /// </summary> [ System.ComponentModel.Description("是否顯示顯示滾動條") , System.ComponentModel.DefaultValue(false) , System.ComponentModel.Category("滾動條設置") , System.ComponentModel.Bindable(System.ComponentModel.BindableSupport.Yes) ] public bool ShowScrollBar { get { return _ShowScrollBar; } set { _ShowScrollBar = value; } } private Overflow _OverflowY = Overflow.auto; /// <summary> /// 豎直滾動條 /// </summary> [ System.ComponentModel.Description("豎直滾動條") , System.ComponentModel.DefaultValue(Overflow.auto) , System.ComponentModel.Category("滾動條設置") , System.ComponentModel.Bindable(System.ComponentModel.BindableSupport.Yes) ] public Overflow OverflowY { get { return _OverflowY; } set { _OverflowY = value; } } private Overflow _OverflowX = Overflow.auto; /// <summary> /// 水平滾動條 /// </summary> [ System.ComponentModel.Description("水平滾動條") , System.ComponentModel.DefaultValue(Overflow.auto) , System.ComponentModel.Category("滾動條設置") , System.ComponentModel.Bindable(System.ComponentModel.BindableSupport.Yes) ] public Overflow OverflowX { get { return _OverflowX; } set { _OverflowX = value; } } private Unit _ScrollHeight = Unit.Parse("0px"); /// <summary> /// 滾動高度 /// </summary> [ System.ComponentModel.Description("滾動高度") , System.ComponentModel.Category("滾動條設置") , DefaultValue("0px") , System.ComponentModel.Bindable(System.ComponentModel.BindableSupport.Yes) ] public Unit ScrollHeight { get { return _ScrollHeight; } set { _ScrollHeight = value; } } private Unit _ScrollWidth = Unit.Parse("0px"); /// <summary> /// 滾動寬度 /// </summary> [ System.ComponentModel.Description("滾動寬度") , System.ComponentModel.Category("滾動條設置") , DefaultValue("0px") , System.ComponentModel.Bindable(System.ComponentModel.BindableSupport.Yes) ] public Unit ScrollWidth { get { return _ScrollWidth; } set { _ScrollWidth = value; } } private string _ScrollCssClass = ""; /// <summary> /// 滾動樣式設置 /// </summary> [ System.ComponentModel.Description("滾動樣式設置") , System.ComponentModel.Category("滾動條設置") , System.ComponentModel.DefaultValue("") , System.ComponentModel.Bindable(System.ComponentModel.BindableSupport.Yes) ] public string ScrollCssClass { get { return _ScrollCssClass; } set { _ScrollCssClass = value; } } #region 書寫標簽 void WriteBeginSpan(HtmlTextWriter writer) { if (this._ShowScrollBar) { StringBuilder strSpan = new StringBuilder(); strSpan.Append("<span "); strSpan.Append(string.Format("style='overflow-y:{0};overflow-x:{1};", System.Enum.GetName(typeof(Overflow), this._OverflowY), System.Enum.GetName(typeof(Overflow), this._OverflowX))); if (this._ScrollHeight.ToString() != "0px") { strSpan.Append(string.Format("height:{0};", this._ScrollHeight)); } if (this._ScrollWidth.ToString() != "0px") { strSpan.Append(string.Format("width:{0};", this._ScrollWidth)); } strSpan.Append("';"); if (!string.IsNullOrEmpty(_ScrollCssClass)) { strSpan.Append(string.Format(" class='{0}'", _ScrollCssClass)); } strSpan.Append(">"); writer.Write(strSpan.ToString()); } } void WriteEndSpan(HtmlTextWriter writer) { if (this._ShowScrollBar) { writer.Write("</span>"); } } #endregion #endregion
重寫Render方法:
protected override void Render(HtmlTextWriter writer) { this.WriteBeginSpan(writer); base.Render(writer); this.WriteEndSpan(writer); }
就這樣就可以了。
還要定義一個枚舉:
public enum Overflow { auto = 0, hidden = 1, scroll = 2, visible = 3, inherit = 4 }
感謝你能夠認真閱讀完這篇文章,希望小編分享的“為CheckBoxList和RadioButtonList添加滾動條的方法”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。