我将GridView绑定到某个List。在布局中,我创建了以下模板字段:
<asp:TemplateField HeaderText="Phrase">
<ItemTemplate>
<asp:TextBox ID="phraseTextBox" runat="server" Text='<%# Bind("Phrase") %>'/>
</ItemTemplate>
</asp:TemplateField>
但是在更改“短语”列中任何TextBox的内容后,我的列表并未反映出这些更改。
我做错了什么?:)
答案 0 :(得分:0)
ItemTemplate仅用于显示/查看目的。您需要具有EditItemTemplate来指定在编辑行时UI的方式。不仅如此,您还必须向行添加按钮/链接以将其推入编辑模式。
阅读MSDN上的this文章,其中介绍了如何使用网格视图编辑数据。检查“将验证控件添加到编辑界面”部分下的示例,以便使用EditItemTemplate。
答案 1 :(得分:-1)
在这一行
<asp:TextBox ID="phraseTextBox" runat="server" Text='<%# Bind("Phrase") %>'/>
我将使用Eval而不使用Bind
<asp:TextBox ID="phraseTextBox" runat="server" Text='<%# Eval("Phrase") %>'/>
此致