我在gridview中使用模板。在1个模板中我拿了一个复选框,在页脚模板中我按了一个按钮。我想在gridview中的已检查条目上单击按钮时执行更新操作。这是aspx代码。
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:CheckBox ID="CheckBox1" runat="server" />
</ItemTemplate>
<FooterTemplate>
<asp:Button ID="Button1" CommandName="cc" runat="server" Text="Approve" />
</FooterTemplate>
enter code here</asp:TemplateField>
<asp:BoundField DataField="uname" HeaderText="uname" ReadOnly="True"
SortExpression="uname" />
<asp:BoundField DataField="request" HeaderText="request"
SortExpression="request" />
<asp:BoundField DataField="ccnum" HeaderText="ccnum" SortExpression="ccnum" />
<asp:BoundField DataField="status" HeaderText="status"
SortExpression="status" />
</Columns>
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="<%$ ConnectionStrings:AutomobileConnectionString2 %>"
SelectCommand="SELECT * FROM [req]"
UpdateCommand="update req set status = @x where uname=@uname">
<UpdateParameters>
<asp:Parameter Name="x" />
<asp:Parameter Name="uname" />
</UpdateParameters>
</asp:SqlDataSource>
这是我在按钮的点击事件上写的更新代码问题是它没有更新。
protected void button1_Click(object sender, EventArgs e)
{
foreach (GridViewRow gr in GridView1.Rows)
{
CheckBox chk = (CheckBox)gr.FindControl("CheckBox1");
if (chk.Checked)
{
SqlDataSource1.UpdateParameters["x"].DefaultValue = "Approved";
SqlDataSource1.Update();
}
}