0

私の問題を正確に説明しましょう。

グリッド ビュー内にボタンがあります。私がやりたいことは、そのボタンをクリックしたときにモーダル ポップアップを表示することです。

モーダルポップアップエクステンダーをグリッドビュー内に配置できないため、グリッドビューの外に配置しています。グリッドビューの外側に配置しているため、グリッドビュー ボタンにはアクセスできません。このために、グリッドビューの外側にダミー ボタンを作成し、グリッドビュー ボタンのクリック イベントからモーダル ポップアップを呼び出します。

私のグリッドビューをお見せしましょう(テレリックです)

<telerik:RadGrid ID="GridView2" runat="server" AutoGenerateColumns="false" Width="400"
                    GridLines="None" >
            <MasterTableView >
                    <Columns>
                    <telerik:GridBoundColumn DataField="fname" HeaderText="First Name" />
                    <telerik:GridBoundColumn DataField="mname" HeaderText="Middle Name" />
                    <telerik:GridBoundColumn DataField="lname" HeaderText="Last Name" />
                    <telerik:GridTemplateColumn>
                    <ItemTemplate>
                    <asp:CheckBox ID="checkselect" runat="server" />
                    </ItemTemplate>
                    <HeaderTemplate>
                    <asp:Button ID="Button4" runat="server" Text="Remove"  CommandName="Split" OnClick="Button4_Click" />
                    </HeaderTemplate>
                    </telerik:GridTemplateColumn>
                    </Columns>
                    </MasterTableView >
             </telerik:RadGrid>
             </div>
             </td>
             </tr>
 </ItemTemplate>
 </telerik:GridTemplateColumn>
 </Columns>
 </MasterTableView>
 </telerik:RadGrid>

今私のモーダルポップアップ

<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<asp:Button ID="Button5" runat="server" Text="Button" style="display:none"/>
<asp:ModalPopupExtender ID="ModalPopupExtender1" runat="server" TargetControlID="Button5" CancelControlID="Button1" PopupControlID="Panel1">
 </asp:ModalPopupExtender>
   <asp:Panel ID="Panel1" runat="server" Height="65px" style="display:none" >
    <p>
    Thank You for Removing records
    </p>
    </asp:TextBox> <asp:Button ID="Button3" runat="server" Text="Submit"  />
    <asp:Button ID="Button1" runat="server" Text="Cancel" />
     </asp:Panel>
  </ContentTemplate>
  </asp:UpdatePanel>

問題は、グリッドビュー ボタン (Button4) をクリックすると、無効なポストバック エラーがスローされることです。Modalpopup を更新パネルの内側に配置し、グリッドビューを外側に配置しているためだと思います。誰かがこの問題に対処する方法を教えてもらえますか? モーダル ポップアップ エクステンダーが表示される原因となっているボタン クリック イベントを停止しているため、更新パネル内に Gridview を配置できません。

ボタンクリックイベント:

 protected void Button4_Click(object sender, EventArgs e)
    {
    ModalPopupExtender1.Show();
    }
4

2 に答える 2

0

ボタンが GridView 内でクリックされると、'RowCommand' というイベントが発生します。マークアップを使用して、これが使用するメソッドを指定できます。

<telerik:RadGrid ..attributes.. OnRowCommand="DoThisMethod">

次に、コードビハインドで:

protected void DoThisMethod(object sender, EventArgs e)
{
    //Do your stuff
}

これは、GridView をパネルに配置できるようになったことを意味します。これは、それでも行コマンド イベントを発生させる必要があるためです。

RadGrid についてはわかりませんが、これは確かに GridViews の場合です。

于 2013-07-30T14:46:17.187 に答える