如何在我的C#代码中引用来自gridview的文本框
本文关键字:gridview 文本 引用 我的 代码 | 更新日期: 2023-09-27 18:21:43
我发现的所有例子都没有帮助。我在网格视图的页脚有一个名为"txtMyCoverage"的文本框。在我的代码库中,我只想引用那个文本框来表示
a = txtMyCoverage.Text;
我试过
gvLimit.FindControl("txtMyCoverage").ToString();
但它返回空引用。谢谢你的帮助!
这是我的网格
<asp:GridView Width="100%" ID="gvLimits"
CssClass="gridView no_min_width"
runat="server"
AutoGenerateColumns="False"
CellPadding="2" ShowFooter="true"
DataKeyNames="PolicyLimitID, LimitID"
HorizontalAlign="Center"
OnRowDataBound="gvLimits_RowDataBound">
<RowStyle HorizontalAlign="Center" />
<Columns>
<asp:TemplateField HeaderText="Coverage">
<ItemTemplate>
<asp:Label ID="txtLimitLetter" runat="server" Width="20px" CssClass="center" Text='<%# Bind("Limit.LimitLetter") %>' Enabled="false" ></asp:Label>
</ItemTemplate>
<FooterTemplate>
<asp:TextBox ID="txtMyCoverage" runat="server" Width="50px" CssClass="center" ></asp:TextBox>
</FooterTemplate>
</Columns>
</asp:GridView>
如果您像这样使用TextBox:
<asp:TemplateField HeaderText="Coverage">
<ItemTemplate>
<asp:Label ID="txtLimitLetter" runat="server" Width="20px" CssClass="center" Text='<%# Bind("Limit.LimitLetter") %>' Enabled="false" ></asp:Label>
</ItemTemplate>
<FooterTemplate>
<asp:TextBox ID="txtMyCoverage" runat="server" Width="50px" CssClass="center" ></asp:TextBox>
</FooterTemplate>
然后你可以找到这样的行绑定:
关于网格的RowBoundEvent
protected void GridView_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.Footer)
{
TextBox txtLimitLetter=(TextBox)e.Row.FindControl("txtLimitLetter");
}
}
或您可以查看网格视图行
foreach(GridViewRow row in GridView2.Rows)
{
if (e.Row.RowType == DataControlRowType.Footer)
{
TextBox txtLimitLetter=(TextBox)e.Row.FindControl("txtLimitLetter");
}
}