假设DataGrid的某一列声明如下
<asp:TemplateColumn>
<ItemTemplate>
<asp:TextBox Runat="server" ID="txtID" Text='<%# DataBinder.Eval(Container.DataItem,"au_id") %>'>
</asp:TextBox>
</ItemTemplate>
</asp:TemplateColumn>
读取方法:
TextBox txt = (TextBox)DataGrid1.Items[1].FindControl("txtID");
<asp:TemplateColumn>
<ItemTemplate>
<asp:TextBox Runat="server" ID="txtID" Text='<%# DataBinder.Eval(Container.DataItem,"au_id") %>'>
</asp:TextBox>
</ItemTemplate>
</asp:TemplateColumn>
读取方法:
TextBox txt = (TextBox)DataGrid1.Items[1].FindControl("txtID");
<FooterTemplate>
<asp:TextBox id="TextBox4" Text="xxxxx" runat="server"></asp:TextBox>
</FooterTemplate>
此时通过
string strLastName = ((TextBox)e.Item.FindControl("TextBox4")).Text;
即可以得到strLastName为xxxxx,不过无论你输入任何字符串,都为这个值,请问是怎么回事?