求助,怎么在列表控件中添加两列ios 复选框控件

2011年 总版技术专家分年内排行榜第三2010年 总版技术专家分年内排行榜第三
2012年 总版技术专家分年内排行榜第五
本帖子已过去太久远了,不再提供回复功能。ASP.NET中CheckBoxList复选框列表控件详细使用方法
来源:易贤网&& 阅读:579 次&&日期: 16:27:16
温馨提示:易贤网小编为您整理了“ASP.NET中CheckBoxList复选框列表控件详细使用方法”,方便广大网友查阅!
本文主要介绍CheckBoxList几种常见的用法,并做出范例演示供大家参考,希望对学习asp.net的朋友有所帮助。
可以使用两种类型的 ASP.NET 控件将复选框添加到 Web 窗体页上:单独的 CheckBox 控件或 CheckBoxList 控件。两种控件都为用户提供了一种输入布尔型数据(真或假、是或否)的方法。
本文主要介绍CheckBoxList,不言而喻,看到List就知道是一个列表(集合),一个控件可以包含多个CheckBox,下面让我们来看看具体的用法。
1.绑定数据
this.lngCatalogID.DataSource = //这里我绑到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就表示钩选啦.
4.DataGrid中全选
foreach(DataGridItem thisItem in DataGridLogininfo.Items)
& & ((CheckBox)thisItem.Cells[0].Controls[1]).Checked = CheckBox2.C
5.反向选择
for (int i = 0; i & checkedListBox1.Items.C i++)
& & if (checkedListBox1.GetItemChecked(i))
& & & & checkedListBox1.SetItemChecked(i, false);
& & & & checkedListBox1.SetItemChecked(i, true);
CheckBoxList控件用法范例
范例一、循环遍历每个选项,包含的对应值的设置为选中状态
for (int i = 0; i & hfAnswers.Value.Split(',').L i++)//给CheckBoxList选中的复选框 赋值
& & for (int j = 0; j & CBoxListAnswer.Items.C j++)
& & & & if (hfAnswers.Value.Split(',')[i] == CBoxListAnswer.Items[j].Value)
& & & & & CBoxListAnswer.Items[j].Selected =
范例二、循环来遍历读取每个选项,将选中的选项的值拼接成字符串,以便后续插入数据库
string m_strTemp = string.E
for (int i = 0; i & CBoxListAnswer.Items.C 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);
& & Label1.Text = m_strT
更多信息请查看
【】&&&&&【点此处查询各地各类考试咨询QQ号码及交流群】
易贤网手机网站地址:
由于各方面情况的不断调整与变化,易贤网提供的所有考试信息和咨询回复仅供参考,敬请考生以权威部门公布的正式信息和咨询为准!
相关阅读 & & &
&&& &nbsp&nbsp&nbsp会员注册
本站不参与评论!()
自觉遵守:爱国、守法、自律、真实、文明的原则
尊重网上道德,遵守中华人民共和国各项有关法律法规
严禁发表危害国家安全,破坏民族团结、国家宗教政策和社会稳定,含侮辱、诽谤、教唆、淫秽等内容的评论
承担一切因您的行为而直接或间接导致的民事或刑事法律责任
您在本站发表的评论,本站有权保留、转载、引用或者删除
参与本评论即表明您已经阅读并接受上述条款步骤1 : 添加一个列出产品信息的分页的GridView 控件
在考虑如何添加一列 复选框 之前 , 让我们先关注一下如何在支持分页的 GridView 控件中列出产品信息。首先,打开 EnhancedGridView 文件夹中的 CheckBoxField.aspx 页,然后将一个 GridView 控件从工具箱中拖放到设计器中,并将其 ID 设置为 Products 。接下来,把 GridView 控件绑定到一个名为 ProductsDataSource 的新 ObjectDataSource 上。将 ObjectDataSource 配置使用 ProductsBLL
类,即调用 GetProducts() 方法返回数据。因为这个 GridView 控件是只读的,所以在 UPDATE 、 INSERT 和 DELETE 选项卡中将下拉列表的设置为 “(None)” 。
图2 :&创建一个名为
ProductsDataSource 的新 ObjectDataSource
图3 :配置
ObjectDataSource 以便使用 GetProducts() 方法返回数据
UPDATE 、INSERT 和 DELETE 选项卡中的下拉列表设置为 “(None)”
完成Configure Data Source 向导后 ,Visual Studio 将会自动为与产品相关的的数据域创建BoundColumns 和 CheckBoxColumn 。与我们在前面教程中所做的一样,除了 ProductName 、 CategoryName 和 UnitPrice BoundField 外,删除所有其他 BoundField ,并将 HeaderText 属性更改为 “Product” 、 “Category” 和 “Price” 。配置 UnitPrice BoundField
,以便将它的值格式化为货币形式。再通过从智能标记上选中 “Enable Paging” 复选框将 GridView 配置为 支持分页。
另外 , 我们还要添加用来删除选定产品的用户界面。在 GridView 控件的下方添加一个 Web 按钮控件,将其 ID 设置为 DeleteSelectedProducts ,将其 Text 属性设置为 “Delete Selected Products” 。本例子中不是将产品从数据库中实际删除,而是要显示一条消息指出将要被删除的产品。为了实现这个目的,需要在 Button 控件下方添加一个 Web 标签控件,将其 ID 设置为 DeleteResults ,清除它的 Text 属性,并将它的 Visible
和 EnableViewState 属性值设置为 False 。
完成这些更改之后 ,GridView 控件、ObjectDataSource 控件、Button 控件和 Label 控件的声明标记应类似如下 :
&p&&&&&&asp:GridView&ID=&Products&&runat=&server&&AutoGenerateColumns=&False&&&&&&&&&&DataKeyNames=&ProductID&&DataSourceID=&ProductsDataSource&&&&&&&&&&AllowPaging=&True&&EnableViewState=&False&&&&&&&&&&&Columns&&&&&&&&&&&&&&asp:BoundField&DataField=&ProductName&&HeaderText=&Product&&&&&&&&&&&&&&&&&&SortExpression=&ProductName&&/&&&&&&&&&&&&&&asp:BoundField&DataField=&CategoryName&&HeaderText=&Category&&&&&&&&&&&&&&&&&&ReadOnly=&True&&SortExpression=&CategoryName&&/&&&&&&&&&&&&&&asp:BoundField&DataField=&UnitPrice&&DataFormatString=&{0:c}&&&&&&&&&&&&&&&&&&HeaderText=&Price&&HtmlEncode=&False&&&&&&&&&&&&&&&&&&SortExpression=&UnitPrice&&/&&&&&&&&&&/Columns&&&&&&/asp:GridView&&&&&&&asp:ObjectDataSource&ID=&ProductsDataSource&&runat=&server&&&&&&&&&&OldValuesParameterFormatString=&original_{0}&&&&&&&&&&SelectMethod=&GetProducts&&TypeName=&ProductsBLL&&&&&&&&&&&&&&&&&&&/asp:ObjectDataSource&&/p&&p&&&&&&asp:Button&ID=&DeleteSelectedProducts&&runat=&server&&&&&&&&&&Text=&Delete&Selected&Products&&/&&/p&&p&&&&&&asp:Label&ID=&DeleteResults&&runat=&server&&EnableViewState=&False&&&&&&&&&&Visible=&False&&&/asp:Label&&/p&
花点时间在浏览器中浏览一下这个页面 ( 参见图5 ) 。此时 , 您应该看到前十个产品的名称、类别和价格信息。
图5 :&列出的前十个产品的名称、类别和价格信息
步骤2 : 添加一列复选框
因为ASP.NET 2.0 包含了 CheckBoxField , 有些人会想到使用它来为 GridView 控件添加一列 复选框 。但实际情况并非这样,因为 CheckBoxField 只对 Boolean 数据域起作用。也就是说,为了能够使用 CheckBoxField ,我们必须指定一个基础数据字段,然后通过查询该字段的值来确定已呈现的复选框是否被选中。我们不能使用 CheckBoxField 来包含一列未选中的复选框。
取而代之 , 我们必须添加一个 TemplateField ,并 为其 ItemTemplate 添加一个 CheckBox Web 控件。继续进行,为 Products GridView 添加一个 TemplateField ,使它成为第一个(最左边的)字段。在 GridView 的智能标记中单击 “Edit Templates” 链接,接着将一个 CheckBox Web 控件从工具箱拖放到 ItemTemplate 中。将该 CheckBox 控件的 ID 属性设置为 ProductSelector 。
TemplateField 的 ItemTemplate 添加一个名为ProductSelector 的 CheckBox Web 控件
添加了TemplateField 和 CheckBox Web 控件后 , 每行都包含了一个复选框。图7 显示的这个画面就是在添加 TemplateField 和CheckBox 后 , 通过浏览器看到的画面。
图7 :&现在每个产品行都包含一个
步骤3 : 回传确定哪些复选框被选定
虽然现在我们已经有了一列复选框 , 但是我们还是没有办法确定回传选中的那些 复选框 。因为单击 “Delete Selected Products” 按钮时,我们需要知道哪些复选框被选中,从而将这些产品删除。
GridView 的&&提供了一种访问 GridView 中行的途径。我们可以循环遍历这些行,通过编码访问 CheckBox 控件,然后通查询它的 Checked 属性来确定这个 CheckBox 是否被选中。
为DeleteSelectedProducts Web 按钮控件的Click 事件创建一个Event Handler , 并添加以下代码 :
Protected&Sub&DeleteSelectedProducts_Click(sender&As&Object,&e&As&EventArgs)&_&&&&Handles&DeleteSelectedProducts.Click&&&&&&&&Dim&atLeastOneRowDeleted&As&Boolean&=&False&&&&&'&Iterate&through&the&Products.Rows&property&&&&For&Each&row&As&GridViewRow&In&Products.Rows&&&&&&&&'&Access&the&CheckBox&&&&&&&&Dim&cb&As&CheckBox&=&row.FindControl(&ProductSelector&)&&&&&&&&If&cb&IsNot&Nothing&AndAlso&cb.Checked&Then&&&&&&&&&&&&'&Delete&row!&(Well,&not&really...)&&&&&&&&&&&&atLeastOneRowDeleted&=&True&&&&&&&&&&&&&'&First,&get&the&ProductID&&the&selected&row&&&&&&&&&&&&Dim&productID&As&Integer&=&_&&&&&&&&&&&&&&&&Convert.ToInt32(Products.DataKeys(row.RowIndex).Value)&&&&&&&&&&&&&'&&Delete&&the&row&&&&&&&&&&&&DeleteResults.Text&&=&String.Format(&_&&&&&&&&&&&&&&&&&This&would&have&deleted&ProductID&{0}&br&/&&,&productID)&&&&&&&&&&&&&'...&To&actually&delete&the&product,&use&...&&&&&&&&&&&&'&Dim&productAPI&As&New&ProductsBLL&&&&&&&&&&&&'&productAPI.DeleteProduct(productID)&&&&&&&&&&&&'............................................&&&&&&&&End&If&&&&Next&&&&&'&Show&the&Label&&at&least&one&row&was&deleted...&&&&DeleteResults.Visible&=&atLeastOneRowDeletedEnd&Sub
Rows 属性会返回一个 GridViewRow 实例集合 , 这个集合组成了 GridView 控件的各个数据行 , 这里的 For Each 循环逐一列举了集合中的各个数据行元素。对每个GridViewRow 对象来说 , 使用row.FindControl(&controlID&)
方法通过编码来访问每行的 Checkbox 控件。如果 CheckBox 控件被选中,那么就会从 DataKeys 集合中返回该行相应的 ProductID 值。在本练习中,我们只是在 DeleteResults Label 中简单地显示了一些信息性消息,而在一个实际应用程序中,我们将改为调用 ProductsBLL 类的 DeleteProduct(productID)
添加了这个 Event Handler 后 , 单击 “Delete Selected Products” 按钮 , 现在就会显示选中产品的 ProductID 。
图8 :&单击
“Delete Selected Products” 按钮时 , 列出了选中产品的ProductID
步骤4 : 添加“Check All” 和“Uncheck All” 按钮
如果用户想删除当前页面上的所有产品 , 他们必须选中每一页面上的 10 个 复选框 。我们可以帮助他们快速实现这个操作,而这一切只需添加一个 “Check All” 按钮。单击这个按钮后,会选中网格中的所有复选框。而 “Uncheck All” 按钮同样有用。
在页面中添加两个 Web 按钮控件,把它们放在 GridView 控件的上面。将第一个按钮的 ID 属性设置为 CheckAll ,将它的 Text 属性设置为 “Check All” ;将第二个按钮的 ID 设置为 UncheckAll ,将它的 Text 属性设置为 “Uncheck All” 。
&asp:Button&ID=&CheckAll&&runat=&server&&Text=&Check&All&&/&&&asp:Button&ID=&UncheckAll&&runat=&server&&Text=&Uncheck&All&&/&
接下来 , 在代码文件类中创建一个名为ToggleCheckState(checkState)
的方法 , 当这个方法被调用时 , 会逐一列举Products GridView 控件的行 Rows 集合, 然后将每行的CheckBox 控件的Checked 属性设置为传进的&checkState&的参数值。
Private&Sub&ToggleCheckState(ByVal&checkState&As&Boolean)&&&&'&Iterate&through&the&Products.Rows&property&&&&For&Each&row&As&GridViewRow&In&Products.Rows&&&&&&&&'&Access&the&CheckBox&&&&&&&&Dim&cb&As&CheckBox&=&row.FindControl(&ProductSelector&)&&&&&&&&If&cb&IsNot&Nothing&Then&&&&&&&&&&&&cb.Checked&=&checkState&&&&&&&&End&If&&&&NextEnd&Sub
接下来 , 为CheckAll 按钮和 UncheckAll 按钮创建 Event Handler 。在 CheckAll 的 Event Handler 中 , 只需简单调用ToggleCheckState(true) 方法 ; 而在UncheckAll 的Event Handler 中 , 需要调用ToggleCheckState(False) 方法。
Protected&Sub&CheckAll_Click(sender&As&Object,&e&As&EventArgs)&_&&&&Handles&CheckAll.Click&&&&&&&&ToggleCheckState(True)End&Sub&Protected&Sub&UncheckAll_Click(sender&As&Object,&e&As&EventArgs)&_&&&&Handles&UncheckAll.Click&&&&&&&&ToggleCheckState(False)End&Sub
有了这些代码 , 单击“Check All” 按钮时 , 会引起回传 , 并会选中 GridView 中的所有 复选框 。同样,单击 “Uncheck All” 会取消选中所有复选框。图 9 显示的是单击 “Check All” 按钮后的屏幕。
图9 :&单击
“Check All” 按钮 , 选中所有 复选框
注意 :&当显示一列
复选框 时 , 有一种方法可以用来全选中或全不选中所有的 复选框, 那就是选中或不选中标题行的 复选框 。还有,通常 “Check All”/“Uncheck All” 的执行需要一个回传。尽管这些复选框能被选中还是不能被选中,完全可以通过客户端脚本来实现,但这里仍然提供了一种令人耳目一新的用户体验。为了详细探讨使用标题行的复选框来实现 “Check All” 和 “Uncheck All” 功能,以及使用客户端技术,请查阅。
本文已收录于以下专栏:
相关文章推荐
1.首先如何在gridview中加入一个checkbox,注意不是checkboxfiled
//在这儿呢,是的,就是这么简单
protected void Page_Loa...
function signcheck(cbox)
    {
    
        var obj = document.getElementsBy...
用户配置好如下图的复选框,动态
QtreeView是ui中最常用的控件,Qt中QTreeWidget比QTreeView更简单,但没有QTreeView那么灵活(QTreeWidget封装的和MFC的CTreeCtrl很类似,没有m...
C#开发学习笔记:向Dev控件库中的GridControl添加自定义复选框
需求:用户根据自己的需求,配置下拉框中的字段。
1 建立测试工程 
    新建一个对话框工程,并添加一个CListCtrl控件,并关联一个成员变量m_List。 
2 设置LVS_EX_CHECKBOXES风格 
   ...
他的最新文章
讲师:王哲涵
讲师:韦玮
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)帮助企业打造成功软件!
热门搜索:
DevExpress GridControl使用教程:添加checkbox复选框
DevExpress GridControl使用教程:添加checkbox复选框
| 作者: |
15:40:51| 阅读 0次
概述:本文介绍了DevExpress GridControl中如何添加checkbox复选框,同时附上了源代码。
添加一列,FieldName为&check&,将ColumnEdit设置为复选框样式。gridview1 editable设置为true
将要绑定的DataTable添加列&check&,Type为bool。
绑定DataTable到GridControl。
string value = gridview.GetDataRow(i)[&check&].toString();
value == &true& ||& && (&false&)
设置为多选
gridView1 .OptionsSelection.MultiSelect =
gridView1 .OptionsSelection.MultiSelectMode = DevExpress.XtraGrid.Views.Grid.GridMultiSelectMode.RowS
测试的例子如下:
给GridControl添加数据
string strConn = &###&;
OracleConnection oconn = new OracleConnection(strConn);
string strComm = &select CITY_NAME,DISTRICT_NAME from CC_COMPLAINT_POINT&;
OracleDataAdapter oda = new OracleDataAdapter(strComm, oconn);
DataSet ds = new DataSet();
oda.Fill(ds, &cx&);
ds.Tables[&cx&].Columns.Add(&check&,System.Type.GetType(&System.Boolean&));
gridControl1.DataSource = ds.Tables[&cx&];
//Rel.DataSource = ds.Tables[&cx&];
//Rel.DisplayMember = &DISTRICT_NAME&;
//Rel.ValueMember = &CITY_NAME&;
catch(Exception ex)
MessageBox.Show(ex.ToString());
oconn.Close();
点击测试check按钮响应如下事件(获取被check的数据)
private void buttonX3_Click(object sender, EventArgs e)
string value=&&;
string strSelected=&&;
for (int i = 0; i & gridView1.RowC i++)
value = gridView1.GetDataRow(i)[&check&].ToString();
if (value == &True&)
strSelected += gridView1.GetRowCellValue(i, &DISTRICT_NAME&);
MessageBox.Show(strSelected);
运行结果如下:
转载自http://blog.csdn.net/weinierbian/article/details/6255402
慧都控件|提供软件技术整体解决方案
云集全球三千余款优秀控件、软件产品,提供行业领先的咨询、培训与开发服务
企业QQ:|电话:023-
服务与支持
重庆 / 023-
北京 / 010-
400-700-1020
慧都旗下网站
慧都科技有限公司 版权所有 Copyright
100%正版软件
400-700-1020
<input type="hidden" id="url" value=""/>&#xe621; 上传我的文档
&#xe602; 下载
&#xe60c; 收藏
该文档贡献者很忙,什么也没留下。
&#xe602; 下载此文档
正在努力加载中...
之列表控件(CListCtrl)中加入复选框
下载积分:100
内容提示:VC
之列表控件(CListCtrl)中加入复选框
文档格式:PDF|
浏览次数:232|
上传日期: 22:06:14|
文档星级:&#xe60b;&#xe60b;&#xe60b;&#xe60b;&#xe60b;&#xe60b;
全文阅读已结束,如果下载本文需要使用
&#xe71b; 100 积分
&#xe602;下载此文档
该用户还上传了这些文档
之列表控件(CListCtrl)中加入复选框
官方公共微信}

我要回帖

更多关于 axure下拉复选框控件 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信