У меня есть вид сетки, который содержит 4 поля шаблона, каждый из которых содержит текстовое поле. Теперь я связал эти поля шаблонов с источником данных. Когда я как пользователь набираю некоторые данные в текстовом поле и нажимаю кнопку «Сохранить» (кнопка, которая не является частью gridview, а отдельная в веб-форме), я не могу получить значения в обработчике событий кликов в коде за файлом. Пожалуйста, помогите мне.Asp.net grid view template fields data persist
файл ASPX
<asp:TemplateField HeaderText="col1">
<ControlStyle Height="25px" Width="60px" />
<ItemTemplate>
<asp:TextBox ID="txt1" runat="server" Text='<%# Bind("[col1]") %>'>
</asp:TextBox>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="col2">
<ControlStyle Height="25px" Width="60px" />
<ItemTemplate>
<asp:TextBox ID="txt2" runat="server" Text='<%# Bind("[col2]") %>'>
</asp:TextBox>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="col3">
<ControlStyle Height="25px" Width="60px" />
<ItemTemplate>
<asp:TextBox ID="txt3" runat="server" Text='<%# Bind("[col3]") %>'>
</asp:TextBox>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="col4">
<ControlStyle Height="25px" Width="60px" />
<ItemTemplate>
<asp:TextBox ID="txt4" runat="server" Text='<%# Bind("[col4]") %>'>
</asp:TextBox>
</ItemTemplate>
</asp:TemplateField>
код позади файла
protected void ButtonAdd_Click(object sender, EventArgs e)
{
foreach (GridViewRow row in gvEdit.Rows)
{
string a = ((TextBox)row.FindControl("col1")).Text;
//above line gives a null value
}
}
Возможно, вам также необходимо добавить свой HTML-код – techspider