0

2つのボタンがあるGridViewがあります。ボタンの1つは選択ボタンで、もう1つはコマンドのないボタンです。OnClickサブルーチンをアクティブ化することになっています。サブルーチンが実行されていません。

ボタン付きのGridViewのマークアップは次のとおりです。

        <asp:GridView
            ID="GridViewParentsSummary" 
            runat="server" 
            AllowPaging="True" 
            AllowSorting="True" 
            AutoGenerateColumns="False" 
            DataKeyNames="ID"
            >

            <Columns>
                <asp:BoundField 
                    DataField="ID" 
                    HeaderText="ID" 
                    SortExpression="ID" InsertVisible="False" ReadOnly="True" Visible="False" />

                <asp:BoundField 
                    DataField="FatherName" 
                    HeaderText="FatherName" 
                    SortExpression="FatherName" />

                <asp:BoundField DataField="MotherName" HeaderText="MotherName" 
                    SortExpression="MotherName" />

                <asp:ButtonField 
                    ButtonType="Button" 
                    CommandName="Select" 
                    Text="Select Details" />

                <asp:TemplateField ShowHeader="False">

                    <ItemTemplate>
                        <asp:Button 
                            ID="ButtonNewPersonToReleaseChildren" 
                            runat="server" 
                            CausesValidation="false" 
                            Text="New Person To Release Children"
                            CommandArgument='<%# Eval("ID") %>'
                            OnClick="NewPersonToReleaseChildren" />
                    </ItemTemplate>

                </asp:TemplateField>
            </Columns>
        </asp:GridView>

ボタンのサブルーチンを使用したVB.Netコードビハインドコーディングは次のとおりです。

Protected Sub GridViewParentsSummary_SelectedIndexChanged(sender As Object, e As EventArgs) Handles GridViewParentsSummary.SelectedIndexChanged

    IntParentsID = GridViewParentsSummary.DataKeys(GridViewParentsSummary.SelectedIndex).Value

    Response.Redirect("AuthorizationForChildReleaseDetails.aspx")
End Sub

Protected Sub NewPersonToReleaseChildren(sender As Object, e As EventArgs)

    blnAddModeIsSelected = True

    MsgBox("The button was clicked.")

    Response.Redirect("AuthorizationForChildReleaseDetails.aspx")
End Sub

いくつかのコーディングが欠落していることは確かですが、[選択]ボタンのサブルーチンは機能しますが、NewPersonToReleaseChildrenのサブルーチンは機能しないため、それが何であるかはわかりません。

4

2 に答える 2

1

グリッドビューで:

<asp:TemplateField HeaderStyle-HorizontalAlign="Center" ItemStyle-HorizontalAlign="Center"
                        FooterStyle-HorizontalAlign="Center">
                        <ItemTemplate>
                            <asp:ImageButton ID="ImgBtnDel" runat="server" ImageUrl="~/Images/icon-delete.gif" CommandName="del"
                                CommandArgument='<%# Eval("ID") %>' />
                        </ItemTemplate>
                    </asp:TemplateField>

グリッドビューのコードビハインドでaspButtonまたはImagebuttonを使用します。

Protected Sub gridview1_RowCommand(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewCommandEventArgs) Handles gridview1.RowCommand
    Dim myId As String = e.CommandArgument.ToString 
    If  e.CommandName = "del"  Then

    ElseIf e.CommandName = "upd" Then

    End If
End Sub
于 2012-09-30T07:49:15.870 に答える
0

Handles Handles NewPersonToReleaseChildren.Clickハンドラーに追加します

Protected Sub NewPersonToReleaseChildren(sender As Object, e As EventArgs) Handles NewPersonToReleaseChildren.Click

    blnAddModeIsSelected = True

    //MsgBox("The button was clicked.")

    Response.Redirect("AuthorizationForChildReleaseDetails.aspx")
End Sub

MsgBoxasp.netのようなものはないと思います。Handlesが機能しない場合は、その線をその線に置き換えるか、その線Throw New Exception("My Button was called")にブレークポイントを設定して、F5キーを押します。

于 2012-09-30T07:58:29.140 に答える