繁体   English   中英

Checkbox.checked在回发的gridview中

[英]Checkbox.checked in gridview on postback

我在Itemtemplate中有一个带复选框的gridview。 我需要做的是检查条件:

(checkbox.checked==true) 

如果为true,则将行转到另一个gridview。 我将GridView的数据绑定在

if(!PostBack)condition.

一切工作正常,直到我的雇主说他不希望gridview被约束在if(!postback)条件中,但是如果我把那个条件取出checkbox.checked值始终为false!

从您的问题的详细信息来看,我不确定您的老板是希望网格未绑定还是不希望该页面因网格的ViewState而膨胀,但是根据我的经验,通常是后者。 但是,如果您的老板只是不希望网格绑定在“ if(!Postback)”条件中,并且不介意是否已绑定网格或使用ViewState,那么您的老板将不了解使用C#和服务器端进行的Web开发控件。

但是...为了回答您的问题,未选中所有复选框的原因是因为您在应用ViewState之后重新绑定了网格。 ViewState包含回发条件中所需的所有数据,以在回发期间设置复选框的状态,并在OnLoad(或Page_Load)事件之前应用该数据。 通过重新绑定网格,您基本上可以清除在ViewState中发布并应用的所有内容。 要解决此问题,请关闭网格的ViewState,然后在使用FORM集合重新绑定网格之后自行应用复选框的状态。

如果您想取消使用ViewState,请参阅本文中的一些技巧。 http://www.codeproject.com/KB/viewstate/DataGridViewState.aspx

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM