我可以在asp.net中传递2个以上参数或带有onCommand事件的数组吗?

时间:2011-09-29 15:56:53

标签: asp.net events parameters event-handling

问题在于上面而且很短。我试图通过转发器itemtemplate中的按钮传递更多参数

3 个答案:

答案 0 :(得分:0)

CommandArgument属性采用字符串。因此,您可以使用逗号分隔格式将多个值放入该属性,例如:

button.CommandArgument = "param1,param2,param3";

然后在OnClick事件处理程序中,只需拆分CommandArgument属性:

var parameters = e.CommandArgument.Split(',');

答案 1 :(得分:0)

我会将值附加到带分隔符的字符串,如下所示:

CommandArgument='<%# String.Format("{0}|{1}|{2}", Eval("Column1"), Eval("Column2"), Eval("Column3"))'%>    

当你进入事件处理程序时,只需将字符串拆分为分隔符,如下所示:

var columnList = e.CommandArgument.Split('|');

答案 2 :(得分:0)

我用愚蠢的方式来解决这个问题。

将所有内容传递给CommandArgument并使用string.split获取参数数组。

CommandArgument='<%# Eval("PersonId") + ";" + Eval("PersonName") %>'

string[] paras = argu.Split(';');