环境: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文字内容?有何解决办法?
<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文字内容?有何解决办法?
还有,这段for循环写在哪里,什么时候调用的
<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(..,
</ItemTemplate>