手机
当前位置:查字典教程网 >编程开发 >asp.net教程 >如何为CheckBoxList和RadioButtonList添加滚动条
如何为CheckBoxList和RadioButtonList添加滚动条
摘要:如何给CheckBoxList和RadioButtonList添加滚动条?继承基类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("", _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添加滚动条】相关文章:

一个可以让.net程序在非WIN平台上运行的软件Mono

ASP.NET2.0服务器控件之类型转换器

nunit使用指南之—NUnit Quick Start

asp.net后台如何动态添加JS文件和css文件的引用?

如何为asp.net网站项目添加子项目

在.net中用CheckBoxList实现单选

使CheckBoxList的Attributes属性生效(修改微软的一个bug)

asp.net 获取指定文件夹下所有子目录及文件(树形)

C#中使用SendMessage

asp.net导出EXCEL的功能代码

精品推荐
分类导航