これは単純なコードですが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
私のボタンはリピーターアイテムの1つであることに注意してください。CommandNameと問題ありませんCommandTextが、MyArgs は常に空の文字列btn.CommandArgumentです (常に空です)。 CommandArgumentbtn および Repeater Item は空白文字列です。"First,Second,Third,Fourth"その価値として期待しています。
イベントとして OnClick も試しましたが、役に立ちませんでした。何がうまくいかないのでしょうか?