1

我试图在后面的代码中获取添加到 asp:button 的参数,但出现错误:

无法将“System.EventArgs”类型的对象转换为“System.Web.UI.WebControls.CommandEventArgs”类型

此按钮是普通表单的一部分,而不是 gridview 等。

我可能做错了什么?问候。

<form><asp:Button ID="btnPrint" runat="server" Text="Print" CommandArgument="" /></form>

Imports System.Web

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load

    Dim String AS String = "MyValue"
    btnPrint.CommandArgument = String

End Sub    

Protected Sub btnPrint_Click(ByVal sender As Object, ByVal e As CommandEventArgs) Handles btnPrint.Click


     Dim ID as String = e.CommandArgument.toString

     'Have also tried
      'Dim btn As Button = sender
      'Dim ID As String = btn.CommandArgument

      Response.Redirect("Print.aspx?tid=" & ID)

End Sub
4

2 回答 2

2

您只需要更新btnPrint_Click以处理Command事件而不是“单击”:

Protected Sub btnPrint_Click(ByVal sender As Object, ByVal e As CommandEventArgs) Handles btnPrint.Command
于 2013-10-21T18:23:11.483 回答
0

我的 ASP 按钮单击事件如下所示:

Private Sub SearchASPxButton_Click(sender As Object, e As EventArgs) Handles SearchASPxButton.Click

注意第二个参数的类型是 System.EventArgs。是否更改了自动生成的点击事件的类型?还是您自己手动创建的?

于 2013-10-21T18:23:52.947 回答