如何给GridView添加复选框

如何给GridView添加复选框,第1张

Gridview里的模版列

<asp:TemplateField HeaderText="Select">

<HeaderTemplate>

<asp:CheckBox ID="ckbAll" runat="server" onclick="javascript:SelectAllCheckboxes(this)" />

</HeaderTemplate>

<ItemStyle Width="100px" HorizontalAlign="Center" VerticalAlign="Middle"></ItemStyle>

<HeaderStyle HorizontalAlign="Center" VerticalAlign="Middle"></HeaderStyle>

<ItemTemplate>

<asp:CheckBox ID="ckbItem" runat="server" />

</ItemTemplate>

</asp:TemplateField>

上面调用的一个js!有一定的局限!只能选中!不能反选 !

想反选的话你可以在cs里给第一个checkbox加事件!

cs代码:

foreach (GridViewRow sgvRow in this.gvAdsType.Rows)

{

CheckBox cbo = (CheckBox)sgvRow.FindControl("ckbItem")

CRED_AdsEntity objEntity = new CRED_AdsEntity()

if (cbo.Checked)

{

objEntity.sAdID = this.gvAdsType.DataKeys[sgvRow.RowIndex][0].ToString()

delList.Add(objEntity)

}

}

这个是循环谁被选中的!

绑定gridview时一定要把他的datakey绑上!

加分吧!come on!!!

gridview本身显示多少行是没有限制的,可以通过分页来控制显示多少行

单页上显示的记录数默认值为10,一次加载太多内容会影响页面打开速度。可以用PageSize来控制,好像没限制吧。如果不分页,数据加载太多,页面打开速度过慢,当我们运行程序的时候,会发现,datagridview显示datatable中的值,下拉框有我们绑定的数据,但是当我在下拉框中选择一个值离开后,gridview不会显示我们选中的值,而是回到原值。我们就要想办法让我们选中一个值时,保存到datatable中,这样当我们离开后,bindingSource自然会刷新gridview,以达到显示选中值的效果


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11730586.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-18
下一篇 2023-05-18

发表评论

登录后才能评论

评论列表(0条)

保存