CheckBoxList詳細[轉貼]

CheckBoxList

CheckBoxList控件用来建立一个多选的复选框组。CheckBoxList控件中的每个可选项由一个ListItem元素来定义!提示: 此控件支持数据绑定!
如果当我们要使用一群的 CheckBox Web 控件时,在程序的判断上非常麻烦,因此 CheckBoxList Web 控件和 RadioButtonList Web 控件一样是让我们方便的取得用户选取的项目。如果将复选框绑定到数据源,则不能使用CheckBox控件。

一、CheckBox控件属性和事件
1、AutoPostBack属性:用于设置当单击checkboxList控件时,是否自动回送到服务器。True表示回送;False(默认)表示不回送。
2、DataSource属性:用于指定填充列表控件的数据源。
3、DataTextField属性:指定DataSource中一个字段,该字段的值对应于列表项的Text属性。
4、DataValueField属性:指定DataSource中一个字段,字段的值对应于列表项的Value属性。
5、Items属性:表示复选框列表中各个选项的集合,如CheckBoxList1.Items(i)表示第i个选项,i从0开始。每个选项都有以下3个基本属性:
Text属性:表示每个选项的文本。
Value属性:表示每个选项的选项值。
Selected属性:表示该选项是否被选中。
Count属性:通过Items.Count属性可获得CheckBoxList控件的选项数;
Add方法:通过items.Add方法可以向CheckBoxList控件添加选项;
Remove方法:通过items.Remove方法,可从CheckBoxList控件中删除指定的选项;
Insert方法:通过items.insert方法,可将一个新的选项插入到CheckBoxList控件中;
Clear方法:通过items.clear方法可以清空CheckBoxList控件中的选项。
6、RepeatColumns属性:用于指定在CheckBoxList控件中显示选项占用几列。默认值为0,表示任意多列。
7、RepeatDirection属性:用于指定CheckBoxList控件的显示方向。Vertical时,列表项以列优先排列的形式显示;Horizontal时,列项以行优先排列的形式显示。
8、RepeatLayout属性:用于设置选项的排列方式。Table(默认)时,以表结构显示,属性值为Flow时,不以表结构显示。
9、SelectedIndex属性:用于获取或设置列表中选定项的最低序号索引值。如果列表控件中只有一个选项被选中,则该属性表示当前选定项的索引值。
10、SelectedItem属性:用于获取列表控件中索引值最小的选定项。如果列表中只有一个选项被选中,则该属性表示当前选定项。通过该属性可获得选定项的Text和Value属性值。
11:SelectedIndexchanged事件:当用户选择了列表中的任意复选框时,都将引发事件。

二、使用语法

<ASP:CheckBoxList

  Id=" 控件名称 "

  Runat="Server"

  AutoPostBack="True | False"

  CellPadding=" 像素 "

  DataSource="<% 数据源 %>"

  DataTextField=" 数据源的字段 "

  DataValueField=" 数据源的字段 "

  RepeatColumns=" 字段数量 "

  RepeatDirection="Vertical | Horizontal"

  RepeatLayout="Flow | Table"

TextAlign="Right | Left"

  OnSelectedIndexChanged=" 事件程序名称 "

>

  <ASP:ListItem/>

</ASP:CheckBoxList>

三、使用实例
<Script Language="C#" Runat="Server">


protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
            }

                CheckBoxListCreate();
        }

//動態生成CheckBoxList

protected void CheckBoxListCreate()

{

       CheckBoxList ch1 = chkList ;

       ch1.Items.Clear();//清除現有item
       ch1.RepeatDirection = RepeatDirection.Vertical;//橫向排列
       ch1.RepeatColumns = 4;//限制4列

//一一增加Items

 ch1.Items.Add(

        new ListItem("CheckBox0,"123"

      );

 ch1.Items.Add(

        new ListItem("CheckBox1","13423"

      );

 ch1.Items.Add(

        new ListItem("CheckBox2","1235"

      );

 ch1.Items.Add(

        new ListItem("CheckBox3","1234"

      );

 ch1.Items.Add(

        new ListItem("CheckBox4","1234"

      );

//對value值符合額定的作selected動作

foreach (ListItem li in ch1.Items)
                    {
                        if (li.Value == "123 ")
                        {
                            li.Selected = true;
                            break;
                        }
                    }

}

public void Sub_Click(Object src,EventArgs e)
{
 string Resulte = null;
 for(int i=0;i<chkList.Items.Count;i++)
 {
  if(chkList.Items[i].Selected)
  {
   Resulte = Resulte + "CheckBox"+i.ToString()+"已经选中<br>";
  }
 }
 lblShow.Text = Resulte;
}
</script>
<html>
<head>
<title></title>
</head>
<body>
<b>CheckBoxList控件演示</b>
<hr>
<form runat="server">
<asp:CheckBoxList id="chkList"  runat="server" >
 <asp:ListItem>CheckBox0</asp:ListItem>
 <asp:ListItem>CheckBox1</asp:ListItem>
 <asp:ListItem>CheckBox2</asp:ListItem>
 <asp:ListItem>CheckBox3</asp:ListItem>
 <asp:ListItem>CheckBox4</asp:ListItem>
</asp:CheckBoxList>
<asp:Button Text="提交" OnClick="Sub_Click" runat="server" />
<hr>
<asp:Label id="lblShow" runat="server" />

</form>
</body>
</html>

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值