Hai*_*ihi 7 c# datagridview winforms datagridviewrow
我在C#3.5的WinForm应用程序中有一个DataGridView。
AllowUserToAddNewRow属性设置为true。当用户在DataGridView中键入任何文本时,另一新行将自动添加到DataGridView。我不希望添加新行,直到对当前行执行了一些检查并且所有必要的信息都已填满为止。
示例:我有一个带有空白行的DataGridView:

当我开始输入时,添加新行还为时过早:

我想要的是仅在用户输入数量后才添加新行:

设置 AllowUserToAddNewRow = false 现在最初向您的数据源添加一个空白行,例如。如果您将 DataGridView 绑定到名为 DT 的 DataTable,那么就在此之前
dataGridView1.DataSource = DT;
Run Code Online (Sandbox Code Playgroud)
做类似的事情
DT.Rows.Add(DT.NewRow());
Run Code Online (Sandbox Code Playgroud)
这是最初有一个空白行,以便可以输入第一条记录。然后处理事件 dataGridView1.CellEndEdit,在该事件中编写如下内容:
void dataGridView1_CellEndEdit(object sender, DataGridViewCellEventArgs e)
{
if (e.ColumnIndex == 1)//The index of your Quantity Column
{
int qty = (int)DT.Rows[e.RowIndex][e.ColumnIndex];
if (qty > 0)//Your logic if required
{
DT.Rows.Add(DT.NewRow());
}
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
16406 次 |
| 最近记录: |