环境:VS2005 C#                <asp:TemplateField HeaderText="index" Visible="False">
                    <HeaderStyle Font-Size="Small" />
                    <ItemTemplate>
                    <%# Eval("aindexa") %>
                    <asp:Label ID="Label_6" runat="server" Font-Size="Small" Text=""></asp:Label>
                    </ItemTemplate>
                </asp:TemplateField>注:数据库对应字段是数字类型
通过测试,绑定成功,数据库中数据都显示到了GridView对应列下单元格内获取:              
                for (int i = 0; i < GridView1.Rows.Count;++i )
                {
                    CheckBox cb = (CheckBox)GridView1.Rows[i].FindControl("checkbox1");
                    Label lb = (Label)GridView1.Rows[i].FindControl("Label_6");
                    string index = lb.Text;
                    //通过Cell属性获得到的文本也是空
                    if (cb != null && cb.Checked == true && index.Length > 0)
                    {
                        //经测试,同行的cb.Checked 成立时,index.Length却为0                    }
                }怎么获取不到label文字内容?有何解决办法?

解决方案 »

  1.   

    checkbox1放在哪里
    还有,这段for循环写在哪里,什么时候调用的
      

  2.   


            <asp:GridView ID="GridView1" runat="server" AllowPaging="True" AutoGenerateColumns="False"
                Height="330px" Width="695px" DataSourceID="AccessDataSource2" BorderColor="Silver" BorderWidth="1px" OnRowDataBound="GridView1_RowDataBound" OnSelectedIndexChanged="GridView1_SelectedIndexChanged" OnDataBound="GridView1_DataBound">
                <Columns>
                    <asp:TemplateField HeaderText="index" Visible="False">
                        <HeaderStyle Font-Size="Small" />
                        <ItemTemplate>
                        <%# Eval("aindexa") %>
                        <asp:Label ID="Label_6" runat="server" Font-Size="Small" Text=""></asp:Label>
                        </ItemTemplate>
                    </asp:TemplateField>
                    <asp:TemplateField HeaderText="选择">   
                    <ItemTemplate>
                    <asp:CheckBox ID="checkbox1" runat="server" />  
                    </ItemTemplate>   
                        <ControlStyle Width="32px" />
                        <ItemStyle Width="28px" />
                        <HeaderStyle Font-Size="Small" />
                    </asp:TemplateField>
    点了某个checkbox后,再点击"删除所选行"按钮,在其回调函数中执行for(..,
      

  3.   

    <ItemTemplate><asp:Label ID="Label_6" runat="server" Font-Size="Small" Text=‘<%# Eval("aindexa") %>’></asp:Label>
    </ItemTemplate>