具有自动生成列的可编辑网格视图

本文关键字:编辑 网格 视图 自动生成 | 更新日期: 2023-09-27 18:28:08

我正在尝试制作一个非常简单的asp.net页面,该页面使用具有可编辑行的Linq2SQL绑定GridView。我基本上想添加2个按钮字段,"编辑"answers"删除"。当单击"删除"时,行被删除,当单击"编辑"时,每个自动生成的列都会变成一个文本框并可编辑,并显示一个新按钮"保存"。单击"保存"按钮后,页面将被重新加载,编辑后的条目将在数据库中更新。我真的不担心错误检查或任何花哨的东西,我只想找到一种快速编辑表格的方法。

我正在尝试使它通用,这样我就可以使用DropDownList:编辑任何表格

grd.DataSource = db.GetTable(ddlTable.SelectedItem.Text);
grd.DataBind();
<asp:GridView id="grd">
<Columns>
<asp:ButtonField id="edit" Text="Edit"/>
<asp:ButtonField id="delete" Text="Delete"/>
</Columns>
</GridView>

我想我有两个主要问题:

1) 是否可以使用AutoGenerateColumn="true"来实现这一点,从而使每个表都是可编辑的,而不必为每个表硬编码?

2) 有没有一种直接的方法可以在不编写自定义控件的情况下使用内置的GridView事件来实现这一点?我并不反对最终使用自定义控件,但如果有必要,我想自己写;在这一点上,我试图避免这种情况。

具有自动生成列的可编辑网格视图

1)GridView具有"AutoGenerateDeleteButton"answers"AutoGenerateEditButton"属性,您可以将其设置为true。

2) 使用DataSource(可能是LinqDataSource)绑定网格。通过这种方式,您可以直接从模型中指定编辑和删除事件中发生的内容。它还将为您提供内置的分页/排序功能。