Erlauben nur eine checkbox ausgewählt werden, in gridview innerhalb modalpopup

Habe ich ein modales popup, das hat ein gridview das gridview-Steuerelement hat eine Reihe von Zeilen, ich will nur die Benutzer werden in der Lage zu wählen eine Reihe. Also, wenn Sie wählen Sie einen anderen, es wird auch die Markierung der vorherigen.

Habe ich versucht eine Reihe von Methoden, kann aber nicht die oncheckedchanged-Ereignis ausgelöst.
Bitte kann mir jemand helfen
Cheers

<asp:button id="btnShowPopupOW" style="display: none" runat="server" />
<asp:modalpopupextender id="mpeOW" behaviorid="mpeOW" runat="server" targetcontrolid="btnShowPopupOW"
    popupcontrolid="pnlpopupOW" cancelcontrolid="imgOWCancel" backgroundcssclass="modalBackground" />
<asp:panel id="pnlpopupOW" runat="server" width="600px" style="display: none;" class="ModalPanel">

            <div style="position: relative; min-height: 490px;">
                <asp:UpdatePanel ID="upExisting" runat="server" ChildrenAsTriggers="true">
                    <ContentTemplate>
                        <table style="width: 600px;">
                            <tr height="25px">
                                <td>
                                    <asp:Panel ID="pnlPrev" runat="server" Height="200px" ScrollBars="Auto" HorizontalAlign="Center">
                                        <asp:GridView ID="grdPrevious" runat="server" ClientIDMode="Static" AutoGenerateColumns="false" Width="100%"
                                            ShowFooter="false" ShowHeaderWhenEmpty="false" DataKeyNames="ID"  >
                                            <Columns>
                                                <asp:BoundField DataField="dates" HeaderText="Dates" />
                                                <asp:BoundField DataField="Prev" HeaderText="Previous" />
                                                <asp:TemplateField>
                                                    <ItemTemplate>
                                                        <asp:CheckBox ID="ChkSelect" runat="server"  OnCheckedChanged="ChkSelect_OnCheckedChanged" />
                                                    </ItemTemplate>
                                                </asp:TemplateField>
                                            </Columns>
                                        </asp:GridView>
                                    </asp:Panel>
                                </td>
                            </tr>
                        </table>
                    </ContentTemplate>
                    <Triggers>

                    </Triggers>
                </asp:UpdatePanel>
                </div>
                </asp:panel>

mit den folgenden in der codebehind -

protected void ChkSelect_OnCheckedChanged(object sender, EventArgs e)
        {
            CheckBox activeCheckBox = sender as CheckBox;

            foreach (GridViewRow rw in grdPrevious.Rows)
            {
                CheckBox chkBx = (CheckBox)rw.FindControl("ChkSelect");
                if (chkBx != activeCheckBox)
                {
                    chkBx.Checked = false;
                }
                else
                {
                    chkBx.Checked = true;
                }
            }
        }
  • Haben Sie versucht, AutoPostBack="True"?
InformationsquelleAutor user1801525 | 2014-05-07
Schreibe einen Kommentar