我希望能够使用GridView控件批量编辑一列的所有行。这样做的最佳方式是什么?
答案 0 :(得分:3)
如果要更新具有相同值的所有行,请在列标题中显示正确的控件(textbox / dropdown / checkbox / radio) 其他 以编辑模式显示网格列而不是标签。
见以下内容:
http://www.codeproject.com/KB/webforms/BulkEditGridView.aspx
答案 1 :(得分:0)
答案 2 :(得分:0)
可能不是最好的,但是一个选项是将表的主键设置为GridView的DataKey然后迭代网格并使用datakey和编辑的值来更新DB。这是一个例子。
<asp:GridView ID="GridView1" runat="server" DataKeyNames="ID">
<Columns>.....
foreach (var item in GridView1.Items)
{
var id = (Guid)GridView1.DataKeys[item.DataItemIndex].Value;
var txt= item.FindControl("AmountTextBox") as Textbox;
if (cb != null && id.HasValue)
UpdateRow(id.Value, txt.Text);
}