繁体   English   中英

如何在复选框的单击事件上更改网格视图的单元格值

[英]How to change the cell value of grid view on click event of check box

我正在尝试更改复选框单击事件的单元格值

我的网格视图标记代码如下所示:

<asp:GridView ID="gvDetails" runat="server" AutoGenerateColumns="False"
AutoGenerateEditButton="True" Height="144px" 
Width="397px"
 onrowcommand="gvDetails_RowCommand" 
 onrowcancelingedit="gvDetails_RowCancelingEdit1" 
 onrowediting="gvDetails_RowEditing" onrowupdating="gvDetails_RowUpdating" 
 onrowdatabound="gvDetails_RowDataBound">
 <HeaderStyle BackColor="#df5015" Font-Bold="true" ForeColor="White" />
 <Columns>

 <asp:TemplateField HeaderText="Call">
 <ItemTemplate>
   <asp:CheckBox ID="chkCall" runat="server" AutoPostBack="true"  OnCheckedChanged="chkCall_CheckedChanged" />
  </ItemTemplate>
  <HeaderStyle BackColor="#0033CC" />
  </asp:TemplateField>

 <asp:BoundField  HeaderText="caLLTIME" >
 <HeaderStyle BackColor="#0033CC" />
 </asp:BoundField>

 </Columns>
 </asp:GridView>

我的C#编码:

protected void chkCall_CheckedChanged(object sender, EventArgs e)
{
    GridViewRow row = (GridViewRow)((Button)sender).NamingContainer;      
    row.Cells[2].Text = Convert.ToString(DateTime.Now);
}

Bu我收到此错误:

Unable to cast object of type 'System.Web.UI.WebControls.CheckBox' to
type 'System.Web.UI.WebControls.Button' 

在第一行。

请帮我

由于发件人是CheckBox您可以将其CheckBoxCheckBox ,然后获取NamingContainer

 GridViewRow row = (GridViewRow)((CheckBox)sender).NamingContainer;  

暂无
暂无

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

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