请选择 进入手机版 | 继续访问电脑版
设为首页收藏本站资讯淘帖

127社区-师生的网上家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

用新浪微博连接

一步搞定

搜索
热搜: 网络激活网址 快递联系电话 送餐电话 快餐 团购
查看: 149|回复: 0

[开发技巧] CheckBoxList详细用法示例

[复制链接]
小平  

363

主题

9

听众

9001

积分

网站编辑

  • TA的每日心情
    开心
    昨天 14:37
  • 签到天数: 61 天

    [LV.6]常住居民II

    • 收听TA
    • 发消息
    发表于 2012-8-29 08:58:40 |显示全部楼层

    马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

    立即注册 已有账号?点击登录 或者 用QQ帐号登录

    本帖最后由 小平 于 2012-8-29 09:11 编辑
    1. for (int i = 0; i < CheckBoxList1.Items.Count; i++)
    2. {
    3.       if (CheckBoxList1.Items.Selected)
    4.       Response.Write("你选的是" +CheckBoxList1.Items.Value+ CheckBoxList1.Items.Text + "
    5. ");
    6. }
    7. <FONT color=red>利用循环来顺序遍历每个选项,被选中的输出.</FONT>
    8.                   for (int i = 0; i < hfAnswers.Value.Split(',').Length; i++)<FONT color=red>//给CheckBoxList选中的复选框 赋值</FONT>                  {
    9.                       for (int j = 0; j < CBoxListAnswer.Items.Count; j++)
    10.                       {
    11.                           if (hfAnswers.Value.Split(',') == CBoxListAnswer.Items[j].Value)
    12.                           {
    13.                               CBoxListAnswer.Items[j].Selected = true;
    14.                           }
    15.                       }
    16.                   }

    17.              string m_strTemp = string.Empty;
    18.              for (int i = 0; i < CBoxListAnswer.Items.Count; i++)<FONT color=red>//读取CheckBoxList 选中的值,保存起来</FONT>             {
    19.                  if (CBoxListAnswer.Items.Selected)
    20.                  {
    21.                      m_strTemp += CBoxListAnswer.Items.Value + ",";
    22.                  }
    23.              }
    24.              if (!string.IsNullOrEmpty(m_strTemp))
    25.                  Label1.Text = m_strTemp.Substring(0, m_strTemp.Length - 1);
    26.              else
    27.                  Label1.Text = m_strTemp;


    复制代码
    1.绑定数据
    1.     this.lngCatalogID.DataSource = dt; //这里我绑到DataTable上了.
    2.     this.lngCatalogID.DataTextField = "strCatalogName"; //前台看到的值,也就是CheckBoxList中显示出来的值
    3.     this.lngCatalogID.DataValueField = "lngCatalogID"; //这个值直接在页面上是看不到的,但在源代码中可以看到
    4.     this.lngCatalogID.DataBind();
    复制代码
    2.获取钩选的项

    1. foreach(ListItem li in lngCatalogID.Items)
    2.     {
    3.      if(li.Selected)    //表示某一项被选中了
    4.      {   
    5.             //li.Test表示看到的值,对应上面的strCatalogName
    6.             //li.Value表示看到的值对应的值.对应上面的lngCatalogID
    7.       }     
    8.     }
    复制代码
    3.设置某项为钩选状态

    1.     foreach(ListItem li in lngCatalogID.Items)
    2.     {
    3.       if(li.Value.Equals("钩选条件"))    //如果li.Value值等于某值,就钩选
    4.       {
    5.        li.Selected = true;                    //等于true就表示钩选啦.
    6.        break;
    7.       }        
    8.     }
    复制代码
        数据绑定
    1. checkedListBox1.DataSource=ds.Tables[0];
    2. checkedListBox1.ValueMember="intSectionID";
    3. checkedListBox1.DisplayMember="txtShortDesc".ToString();
    复制代码
    数据显示
    1. int count = checkedListBox1.Items.Count;
    2. for (int i = 0;i<count;i++)
    3. {
    4. if (checkedListBox1.GetItemChecked(i))
    5. {
    6. MessageBox.Show(checkedListBox1.Items.ToString());
    7. }
    8. }
    复制代码
    DataGrid中全选
    1. foreach(DataGridItem thisItem in DataGridLogininfo.Items)
    2.             {
    3.                 ((CheckBox)thisItem.Cells[0].Controls[1]).Checked = CheckBox2.Checked;
    4.             }

    复制代码
    反向选择

    1. for (int i = 0; i < checkedListBox1.Items.Count; i++)
    2.             {
    3.                 if (checkedListBox1.GetItemChecked(i))
    4.                 {
    5.                     checkedListBox1.SetItemChecked(i, false);
    6.                 }
    7.                 else
    8.                 {
    9.                     checkedListBox1.SetItemChecked(i, true);
    10.                 }
    11.             }

    复制代码
    checkboxlist控件用法范例

    范例一:
    1. <script language="c#" runat="server">
    2. public void Item_changed(Object sender,EventArgs e)
    3. {
    4. string str;
    5. foreach(ListItem item in cblist.Items)
    6. {
    7.     if(item.Selected)
    8.       mylabel.Text+="<hr><li>"+item.Text;
    9. }
    10. }
    11. </script>
    12. <html>
    13. <head><title>checkbox test page</title></head>
    14. <body>
    15. <form runat="server">
    16. <asp:checkboxlist id="cblist" runat="server">
    17. <asp:listitem text="checkbox1"/>
    18. <asp:listitem text="checkbox2"/>
    19. <asp:listitem text="checkbox3"/>
    20. <asp:listitem text="checkbox4"/>
    21. </asp:checkboxlist>
    22. <asp:button id="btn1" text="click me" runat="server"/>
    23. <hr>
    24. <asp:label id="mylabel" runat="server"/>
    25. </form>
    26. </body>
    27. </html>

    复制代码
    该贴已经同步到 小平的微博
    学无止境,勇攀高峰!我们应该给予学生钥匙和打开知识宝库的方法,而不是宝库本身。
    回复

    使用道具 举报

    高级模式
    您需要登录后才可以回帖 登录 | 立即注册

    手机客户端|Archiver|Dr.Com下载|自助广告位|127格子铺|127社区-师生的网上家园 ( 渝ICP备10016736号 ) 手机客户端  

    GMT+8, 2012-9-20 04:24

    回顶部