Ich habe eine Rasteransicht, die 4 Vorlagenfelder enthält, von denen jedes ein Textfeld enthält. Jetzt habe ich diese Vorlagenfelder mit einer Datenquelle gebunden. Wenn ich als Benutzer einige Daten in das Textfeld eintippe und auf Speichern klicke (eine Schaltfläche, die nicht Teil von Gridview ist, sondern eine individuelle im Webformular), kann ich die Werte nicht im Click-Ereignishandler abrufen im Code hinter der Datei. Bitte hilf mir.Asp.net Rasteransicht Vorlage Felder Daten persistent
aspx Datei
<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>
-Code hinter Datei
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
}
}
Möglicherweise müssen Sie auch Ihren HTML-Code – techspider