Winform DataGridView UserAddedRow添加新行

时间:2011-08-17 09:02:14

标签: c# winforms datagridview

可以使用事件UserAddedRow添加新行吗? 如果是,你有一个例子吗?

提前谢谢你。

2 个答案:

答案 0 :(得分:2)

添加行后会触发

UserAddedRow事件。你不能用它来添加东西,因为它已经添加了after某些东西。

根据msdn:

  

在用户向DataGridView添加行时发生   控制。

答案 1 :(得分:1)

如果您不使用数据绑定,则必须手动添加列和行。

dgvApplications.Columns.Add("Col1", "Column 1");
dgvApplications.Columns.Add("Col2", "Column 2");
dgvApplications.Rows.Add("Col1Value", "Col2Value");

但数据绑定通常是更好的选择。

BindingList<Application> applications = new BindingList<Application>();
dgvApplications.DataSource = applications;
// set AutoGenerateColumns to false and manually add columns to get pretty column names.
// set AutoGenerateColumns to true to not worry about adding columns in early prototyping
dgvModules.AutoGenerateColumns = true;  

如果Application实现INotifyPropertyChanged,您可以执行以下操作:

applications.Add(new Application{ File="blah.txt" };

属性更改通知将允许网格在更改基础模型时自动更新。

数据绑定选项有助于将GUI与数据分离。 如果您需要重新设计GUI,或者添加辅助界面(如Web或电话应用程序),“模型 - 视图 - 控制器”设计模式可以在以后帮助您。 http://msdn.microsoft.com/en-us/library/ff649643.aspx