1

これはよくある質問ですが、解決策が見つかりません。あなたが私を助けてくれることを願っています。imagebutton コントロールをグリッドビューにバインドしようとしています。ボタンがクリックされた行のデータを扱いたい

私のaspxファイルは次のようになります

   <asp:ImageButton ID="Button1"
                                  runat="server"
                                  ImageUrl="~/Images/deny.png"
                                  Height="45" Width="45" 
                                  CommandName="SelectComment"
                                  CommandArgument='<%# Container.DataItemIndex %>' />

vbファイルは次のようになります

Protected Sub KontaktAnfragen_RowCommand(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewCommandEventArgs) Handles KontaktAnfragen.RowCommand

    Dim rowIndex As Integer
    Dim commentHiddenField As HiddenField

    If e.CommandName = "SelectComment" Then
        rowIndex = Integer.Parse(e.CommandName.ToString)

問題は、ページがクリックを処理しないことです。それは何もしません.RowCommand関数でジャンプさえしません

よろしくお願いします

4

2 に答える 2

2

あなたのコードを正しく理解できたらOnClick="KontaktAnfragen_RowCommand"、ImageButton に追加する必要があります。

于 2010-10-13T22:32:32.040 に答える
2

画像ボタンがあるGridviewのOnRowCommandイベントに「KontaktAnfragen_RowCommand」を割り当てる必要があります。

OnRowCommand="KontaktAnfragen_RowCommand"

上記のコードで、 ?CommandArgumentの値の代わりに値を使用してはならないことに気付きCommandNameました。rowIndex

また、使用する必要ToStringがあるかどうかはわかりませんが、使用する場合は、メソッド呼び出しのToString()代わりに使用してください。ToString

このようなもの (if ステートメントの書式設定などを含む..)?:

if (e.CommandName == "SelectComment") Then
        rowIndex = Integer.Parse(e.CommandArgument)
于 2010-10-14T08:35:11.193 に答える