主页 > 知识库 > 如何为CheckBoxList和RadioButtonList添加滚动条

如何为CheckBoxList和RadioButtonList添加滚动条

热门标签:服务器配置 智能手机 电子围栏 解决方案 苹果 呼叫中心 地方门户网站 硅谷的囚徒呼叫中心

如何给CheckBoxList和RadioButtonList添加滚动条?
继承基类CheckBoxListRadioButtonList,添加滚动属性,重写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
  }

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
  • ASP.NET中RadioButtonList绑定后台数据后触发点击事件
  • ASP.NET服务器端控件RadioButtonList,DropDownList,CheckBoxList的取值、赋值用法
  • jquery判断RadioButtonList和RadioButton中是否有选中项示例
  • js获取RadioButtonList的Value/Text及选中值等信息实现代码
  • RadioButtonList绑定图片及泛型Dictionary应用
  • javascript判断是否有对RadioButtonList选项选择
  • ASP.NET jQuery 实例16 通过控件CustomValidator验证RadioButtonList
  • JQuery中对服务器控件 DropdownList, RadioButtonList, CheckboxList的操作总结
  • jquery获取ASP.NET服务器端控件dropdownlist和radiobuttonlist生成客户端HTML标签后的value和text值
  • ASP.NET控件之RadioButtonList详解

标签:吕梁 泰安 玉林 德宏 海口 佳木斯 喀什 房产

巨人网络通讯声明:本文标题《如何为CheckBoxList和RadioButtonList添加滚动条》,本文关键词  ;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 收缩
    • 微信客服
    • 微信二维码
    • 电话咨询

    • 400-1100-266