在gridview中的asp.net按钮中传递多个参数

时间:2010-04-05 12:32:18

标签: c# asp.net gridview arguments templatefield

我在gridview中有一个TemplateField列,里面有一个按钮。

没有键值(当然不是我设计的),但另一方面,比较每一列时没有冗余,因为它们是事件,并且有“开始日期”和“结束日期” “不能同时发生两次的事情。

我已经想过选择这些值和所有值,但我只想让按钮将五个参数传递给给定的函数。

我测试过了:

<asp:Button  CommandArgument='<%# Eval("day")%>'  ID="Button2" runat="server" Text="Button" />

它运行正常,点击行的日期传递,并可通过以下方式检索:

e.CommandArgument.ToString();
GridView_RowCommand处理程序中的

如何传递多个参数?我想过要与一个分离的角色连接(不会那么糟糕),但除了不知道怎么做之外(不想投资一个糟糕的解决方案)我想要一个更聪明的人。

1 个答案:

答案 0 :(得分:2)

最简单的方法可能是通过按钮访问GridView行并以这样的方式访问值:

void Button2_Click(object o, EventArgs e) {
    Button myButton = (Button)o;
    GridViewRow row = (GridViewRow)muButton.Parent.Parent;

    string value1 = row.Cells[0].Text;
    string value2 = row.Cells[1].Text;
    ...
}