GridView控件是用于显示和编辑数据的表格控件,它默认只能编辑一行数据,但可以通过编程实现同时编辑多行和动态增加新的行。
以下是一种实现方式:
1. 在GridView控件的属性中将`AutoGenerateEditButton`设置为`true`,使得每一行都显示编辑按钮。
2. 通过在`RowEditing`事件中处理编辑操作,实现同时编辑多行。
protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e) {????GridView1.EditIndex?=?e.NewEditIndex;
????//重新绑定数据源,使得GridView显示编辑状态
????BindGridView(); } protected?void?GridView1_RowUpdating(object?sender,?GridViewUpdateEventArgs?e) {
????//获取更新后的数据并保存到数据源
????GridViewRow?row?=?GridView1.Rows[e.RowIndex];
????//获取需要修改的控件
????TextBox?txtName?=?(TextBox)row.FindControl(“txtName”);
????TextBox?txtAge?=?(TextBox)row.FindControl(“txtAge”);
????//更新数据源
????//…
????//取消编辑状态
????GridView1.EditIndex?=?-1;
????//重新绑定数据源,使得GridView显示非编辑状态
????BindGridView(); } protected?void?GridView1_RowCancelingEdit(object?sender,?GridViewCancelEditEventArgs?e) {
????//取消编辑状态
????GridView1.EditIndex?=?-1;
????//重新绑定数据源,使得GridView显示非编辑状态
????BindGridView(); }
3. 动态增加新的行需要在GridView外放置一个按钮或者其他控件,点击该控件时执行相应的代码。
protected?void?btnAddRow_Click(object?sender,?EventArgs?e) {????//向数据源中添加新的数据行
????//…
????//重新绑定数据源,使得GridView显示新增加的行
????BindGridView(); }
4. 在页面加载时绑定GridView的数据源。
protected?void?Page_Load(object?sender,?EventArgs?e) {????if?(!IsPostBack)
????{
????????BindGridView();
????} } private?void?BindGridView() {
????//绑定GridView的数据源
????//… }
这样就实现了GridView同时进行多行的编辑和动态增加新的行的功能。
辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>