c# - gridview 中的 ASP.NET C# 代码按钮

标签 c# asp.net visual-studio-2010 webforms

大家好,我有一个 GridView (GridView1),我添加了一列并插入了一个按钮:

<asp:GridView ID="GridView1" runat="server" AllowPaging="True" 
            AutoGenerateColumns="False" DataSourceID="ObjectDataSource2" 
            onselectedindexchanged="GridView1_SelectedIndexChanged" Width="798px">
            <Columns>
                .....
                <asp:ButtonField ButtonType="Button" CommandName="cmdFlag" Text="Flag" />
            </Columns>
        </asp:GridView>

基本上是在单击按钮时我想运行 SQL 更新,但似乎无法单击按钮以输入 C# 并添加查询。我可以进入页面的 C#,但不确定要为该方法编写什么。

这是 C# 代码:

 void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
    {
        if (e.CommandName == "cmdFlag")
        {
        con.Open();

        cmd = new SqlCommand("UPDATE Comments SET Flagged = '" + "Yes" + "'", con); 

        cmd.ExecuteNonQuery();


        }

    }

虽然它什么都不做。基本上我需要它来查看该行,如果单击了标记按钮,则将标记下的注释更新为"is"。

最佳答案

您不会获得直接事件。您需要在 RowCommand 事件上编写代码。

void GridView1_RowCommand(Object sender, GridViewCommandEventArgs e)
{
    if(e.CommandName=="cmdFlag")
        {
        //Write code update database
    }
}

您还需要修改 GridView 控件。像这样添加事件。

onrowcommand="GridView1_RowCommand"

您可以获得更多信息here

关于c# - gridview 中的 ASP.NET C# 代码按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5564165/

相关文章:

visual-studio-2010 - 只读模型属性未在 Web API 中序列化

c# - NHibernate 和集合计数

c# - 如何为不是由 ASP.NET 管理的 cookie 设置滑动过期时间?

asp.net - ASP.NET MVC 中的状态管理

c# - 提前关闭与浏览器的连接并返回响应状态

c++ - Visual C++ 输出退出得如此之快

c# - Nhibernate构建查询

c# - 此 switch 语句的编译时错误

c# - 从 JSON 动态反序列化

visual-studio-2010 - XDT 配置转换 - ReplaceAll?