【发布时间】:2015-05-11 17:59:51
【问题描述】:
这是一个简单的代码,不知道为什么CommandArgument 没有被传递给我的事件处理程序。这是我的aspx代码:
</td>
<asp:Button ID="Button1" runat="server" Text="Update Me"
CommandName="Update Name" ComandArgument="First,Second,Third,Fourth"
OnCommand = "Button1IsClicked" />
</td>
这是我的代码:
Protected Sub Button1IsClicked(ByVal sender As Object, ByVal e As EventArgs )
Dim btn As Button = CType(sender, Button)
Dim item As RepeaterItem = CType(btn.NamingContainer, RepeaterItem)
Dim CommandName As String = btn.CommandName
Dim MyArgs As String() = btn.CommandArgument.Split(",")
Dim CommandArgument1 As String = MyArgs(0)
' and so on
End Sub
请注意,我的按钮是中继器项目之一。我得到 CommandName 和 CommandText 很好,但 MyArgs 始终是一个空字符串(btn.CommandArgument 始终是空的)。 CommandArgument 在 btn 和中继器项是一个空白字符串。我期待"First,Second,Third,Fourth" 作为它的价值。
我也尝试将 OnClick 作为事件,但无济于事。 知道可能出了什么问题吗?
【问题讨论】:
-
FWIW,我刚刚使用 VS2013 使用 Click 事件处理程序对此进行了测试,它运行良好......