如何在asp.net中使用c#在可编辑网格中动态添加行
本文关键字:编辑 动态 添加行 网格 asp net | 更新日期: 2023-09-27 17:51:08
如何在asp.net中使用c#动态地在可编辑网格中添加行。在我的网站上,我需要从用户输入所需的行数,然后生成一个可编辑的网格视图。请给我代码来解决这个问题。
谢谢。
我已经通过自学解决了我的问题并得到了正确的答案。我想和大家分享……
首先在表单中添加下拉列表和GridView,并在下拉列表中为用户添加一些关于他们想要在运行时添加的行数的选择,在我的网站中,我添加了四个数字:1,2,3,4;后面的代码是:
protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
{
int x = Convert.ToInt32(DropDownList1.SelectedItem.ToString()); // Number of rows
DataTable dt = new DataTable();
for (int i = 0; i < x; i++)
{
DataRow row1 = dt.NewRow();
dt.Rows.Add(row1);
}
for (int i = 0; i < x; i++)
{
DataRow row1 = dt.NewRow(); //Adding rows
dt.Rows.Add(row1);
}
//Bind the datatable with the GridView.
GridView1.DataSource = dt;
GridView1.DataBind();
}
您必须构建一个可以绑定到Grid的数据源。例如,您可以使用DataTable
或List<myObject>
来存储数据。然后将其用作数据源,GridView将显示来自数据源的数据。如果要添加/删除数据,只需从数据源中添加/删除对象。示例代码:
public class Test{
public int Id {get; private set;}
public string Bez {get; private set;}
public Test(int id, string bez)
{
this.Id = id;
this.Bez = bez;
}
}
使用对象创建数据源:
List<Test> allTests = new List<Test>();
allTests.add(new Test(1, "Test"));
allTests.add(new Test(2, "Test2"));
myGrid.DataSource = allTests;
现在你可以处理列表了。网格可能需要刷新来显示编辑。如果你在网格中编辑数据,这将直接影响你的数据源对象。
如果这不是你想要的,请澄清你的问题