Diskuze: ASP.NET CheckBox Checked v Gridviewu

C# .NET .NET (C# a Visual Basic) ASP.NET CheckBox Checked v Gridviewu American English version English version

Avatar
Matyáš Černohous (Matesak):

Zdravím a přeji všem pěkné svátky.

Mám web na kterém načítám data do GridViewu. V GridViewu jsou i CheckBoxy a já potřuji, aby se mi vypsaly data z toho řádku, na kterém uživatel zaškrtne CheckBox. Mám následující kód.

for (int i = 0; i < GridView1.Rows.Count; i++)
            {
                CheckBox chb = (CheckBox)GridView1.Rows[i].FindControl("chb");

                if (chb.Checked == true)
                {
                    ListBox1.Items.Add(GridView1.Rows[i].Cells[1].Text);


                }

            }

Našel jsem tento problém i na internetu a kód byl funkční, ale když se ho pokouším spustit já, tak nefunguje. Zkoušel jsem si nastavit BreakPoint a zjitil jsem, že i když mám všechny CheckBoxy zaškrtlé, tak chb.Checked se pokaždé rovná null.

<asp:GridView ID="GridView1" runat="server" OnRowDeleting="GridView1_RowDeleting" CellPadding="4" Font-Names="Calibri" ForeColor="#333333" GridLines="None" AutoGenerateColumns="False">
            <AlternatingRowStyle BackColor="White" />
            <EditRowStyle BackColor="#2461BF" />
            <Columns>
            <asp:TemplateField>
                <ItemTemplate>
                    <asp:CheckBox ID="chb" runat="server" />
                </ItemTemplate>
            </asp:TemplateField>
            <asp:BoundField DataField="Predmet" HeaderText="Předmět" ItemStyle-Width="70" />
            <asp:BoundField DataField="Datum" HeaderText="Datum" ItemStyle-Width="150" />
            <asp:BoundField DataField="ZbyvaDni" HeaderText="Zbývá dní" ItemStyle-Width="50" />
            <asp:BoundField DataField="Pripomenuti" HeaderText="Připomenutí" ItemStyle-Width="50" />
        </Columns>

        </asp:GridView>

Tady je Ten gridVieW

Díky za rady :)

 
Odpovědět 24.12.2014 0:58
Avatar
Odpovídá na Matyáš Černohous (Matesak)
Michal Štěpánek:

Mrkni se sem, je to sice ze starší verze ASP.NET, ale snad tam najdeš inspiraci...
http://www.dotnetportal.cz/…rokem-cast-4-

Akceptované řešení
+20 Zkušeností
+1 bodů
Řešení problému
Nahoru Odpovědět 24.12.2014 13:25
Nikdy neříkej nahlas, že to nejde. Vždycky se totiž najde blbec, který to neví a udělá to...
Avatar
Odpovídá na Michal Štěpánek
Matyáš Černohous (Matesak):

Díky :) Moc mi to pomohlo. Zjistil jsem, že chyba byla v tom, že jsem na začátku zapomněl dát podmínku pro nahrání dat

if (!this.IsPostBack)

. Takhle se mi pokaždé, když jsem chtěl vyvolat nějakou akci s CheckBoxem první znovu nabindovala data a checboxy byly prázdné.

 
Nahoru Odpovědět 24.12.2014 15:30
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 3 zpráv z 3.