我有一个转发器,里面有一个链接按钮,我试图用它来执行一些代码:
<asp:LinkButton runat="server" CommandName="SelectCourse" CommandArgument='<%# DataBinder.Eval(Container.DataItem, "crs_no") %>' ID="SelectCourse"> <%# DataBinder.Eval(Container.DataItem, "title1")%></asp:LinkButton>
在我背后的代码中:
protected void Courses_ItemCommand ( object source, RepeaterCommandEventArgs e )
{
if ( e.CommandName == "SelectCourse" )
{
this.ParentPortlet.PortletViewState [ "crs_no" ] = e.CommandArgument.ToString ( );
this.ParentPortlet.NextScreen ( "SelectDate" );
}
}
这工作正常,但我无法弄清楚如何使用此方法使用多个参数。我想发送一个额外的参数,以便我可以使用第二个参数设置另一个“PortletViewState”。
谢谢!
答案 0 :(得分:0)
但我觉得很讨厌,我使用多个隐藏字段intead,我使用e.Item.FindControl加载命令
protected void Courses_ItemCommand(object source, RepeaterCommandEventArgs e)
{
if (e.CommandName == "SelectCourse")
{
HiddenField hdnCrsNo = e.Item.FindControl("hdnCrsNo") as HiddenField;
this.ParentPortlet.PortletViewState["crs_no"] = hdnCrsNo.Value;
this.ParentPortlet.NextScreen("SelectDate");
}
}