一般来说,当Grid里没有数据(即未绑定数据源)时,无法对其进行新行的添加.所以首先需要对其进行数据绑定,绑定语句类似下边:
- gridControl1.DataSource = tmpDataTable;
绑定只能针对GridControl,而不能针对GridView,因为后者的DataSource属性是不可写的,对于GridView中的列,需要将列的FieldName属性设置为DataTable中的列名(区分大小写,注意不是ColumnName或Caption,是FieldName)
绑定了数据后,使用下面的语句启用新行:
- gridView2.OptionsView.NewItemRowPosition = DevExpress.XtraGrid.Views.Grid.NewItemRowPosition.Bottom;
NewItemRowPosition属性默认值为None,设为Bottom或Top即可让Grid显示一个新行,直接在其中进行编辑即可.
如果需要在新生成行时对其进行一些操作,可以为GridView的InitNewVIew事件添加一个处理函数,类似下边:
- private void gridView2_InitNewRow(object sender, DevExpress.XtraGrid.Views.Grid.InitNewRowEventArgs e)
- {
- DataRow row = gridView1.GetDataRow(e.RowHandle);
- row["groupColumn1"] = e.RowHandle;
- row["groupColumn2"] = e.RowHandle;
- }