ASP.NET中CheckBoxList复选框列表控件详细使用方法

可以使用两种类型的 ASP.NET 控件将复选框添加到 Web 窗体页上:单独的 CheckBox 控件或 CheckBoxList 控件。两种控件都为用户提供了一种输入布尔型数据(真或假、是或否)的方法。

本文主要介绍CheckBoxList,不言而喻,看到List就知道是一个列表(集合),一个控件可以包含多个CheckBox,下面让我们来看看具体的用法。

1.绑定数据

复制代码 代码如下:
this.lngCatalogID.DataSource = dt; //这里我绑到DataTable上了.
this.lngCatalogID.DataTextField = "strCatalogName"; //前台看到的值,也就是CheckBoxList中显示出来的值
this.lngCatalogID.DataValueField = "lngCatalogID"; //这个值直接在页面上是看不到的,但在源代码中可以看到
this.lngCatalogID.DataBind();

2.获取钩选的项

复制代码 代码如下:
foreach(ListItem li in lngCatalogID.Items)
{
    if(li.Selected)    //表示某一项被选中了
    {  
        //li.Test表示看到的值,对应上面的strCatalogName
        //li.Value表示看到的值对应的值.对应上面的lngCatalogID
    }
}

3.设置某项为钩选状态

复制代码 代码如下:
foreach(ListItem li in lngCatalogID.Items)
{
    if(li.Value.Equals("钩选条件"))    //如果li.Value值等于某值,就钩选
    {
        li.Selected = true;                    //等于true就表示钩选啦.
        break;
    }
}

4.DataGrid中全选

复制代码 代码如下:
foreach(DataGridItem thisItem in DataGridLogininfo.Items)
{
    ((CheckBox)thisItem.Cells[0].Controls[1]).Checked = CheckBox2.Checked;
}

5.反向选择

复制代码 代码如下:
for (int i = 0; i < checkedListBox1.Items.Count; i++)
{
    if (checkedListBox1.GetItemChecked(i))
    {
        checkedListBox1.SetItemChecked(i, false);
    }
    else
    {
        checkedListBox1.SetItemChecked(i, true);
    }
}

CheckBoxList控件用法范例

范例一、循环遍历每个选项,包含的对应值的设置为选中状态

复制代码 代码如下:
for (int i = 0; i < hfAnswers.Value.Split(',').Length; i++)//给CheckBoxList选中的复选框 赋值
{
    for (int j = 0; j < CBoxListAnswer.Items.Count; j++)
    {
        if (hfAnswers.Value.Split(',')[i] == CBoxListAnswer.Items[j].Value)
        {
          CBoxListAnswer.Items[j].Selected = true;
        }
    }
}

范例二、循环来遍历读取每个选项,将选中的选项的值拼接成字符串,以便后续插入数据库

复制代码 代码如下:
string m_strTemp = string.Empty;
for (int i = 0; i < CBoxListAnswer.Items.Count; i++)//读取CheckBoxList 选中的值,保存起来
{
    if (CBoxListAnswer.Items[i].Selected)
    {
        m_strTemp += CBoxListAnswer.Items[i].Value + ",";
    }
}
if (!string.IsNullOrEmpty(m_strTemp))
    Label1.Text = m_strTemp.Substring(0, m_strTemp.Length - 1);
else
    Label1.Text = m_strTemp;

相关推荐:

ASP.NET常用的代码有哪些

这篇文章主要讲解了“ASP.NET常用的代码有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“ASP.NET常用的代码有哪些”吧!  ASP.NET常用代码有哪些,技术更新迭代的很快,但是一些常用的代码还是经常会用得到的。  1.打开新的窗口并传送...

ASP.NET配置文件Web.config的方法

小编给大家分享一下ASP.NET配置文件Web.config的方法,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!  一、认识Web.config文件  Web.config文件是一个XML文本文件,它用来储存ASP.NET...

ASP.NET中如何调用存储过程

ASP.NET中如何调用存储过程,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。  在使用.NET的过程中,数据库访问是一个很重要的部分,特别是在B/S系统的构建过程中,数据库操作几乎成为了一个必不可少的操作。调用存储过程实现数据库操...

asp.net中怎么调用sql存储过程

asp.net中怎么调用sql存储过程,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。1、创建存储过程,语句如下: CREATE PROC P_viewPage @TableName ...

Route怎么在ASP.NET Core中使用

本篇文章为大家展示了Route怎么在ASP.NETCore中使用,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。创建Controller类创建一个DefaultController类,新增如下代码。 public class De...

怎么在ASP.NET Core项目中实现一个重定向功能

怎么在ASP.NETCore项目中实现一个重定向功能?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。使用RedirectResult可以使用下面任何一个方法来返回RedirectResult。Redirect返回Http状态码为302...

在 ASP.NET Core Web API 中处理Patch请求的方法

今天小编给大家分享的是在 ASP.NET Core Web API 中处理Patch请求的方法,相信很多人都不太了解,为了让大家更加了解,所以给大家总结了以下内容,一起往下看吧。一定会有所收获的哦。一、概述PUT 和 PATCH&...

Session如何在ASP.NET Core项目中使用

本篇文章为大家展示了Session如何在ASP.NETCore项目中使用,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。安装Session中间件要想使用session中间件,你可以使用VisualStudio2019中的NuGetpackagemanager可...