本帖最后由 bic 于 2019-7-4 17:26 编辑
一个类似入库单的主子表窗体,
窗体中包括主记录入库单号、供应商信息等文本字段
子记录列表记录具体入库信息。
子记录列表采用c1flexgrid 绑定方式绑定子表的datatable,
如下图
主记录信息
入库单号:RK001, 供应商:GY001
子记录列表:()
1.如何保存表头清空子表记录
当新增一个入库单时时,需要将上一个入库单的子记录明细全部清掉?
但采用c1flexgrid.datasource=null 会把表头清除掉。
请问怎么清除?
2.如何保存正在编辑的表单元格的信息?
如果采用直接在子记录列表编辑入库明细信息,采用这种方式 保存数据会出现当前编辑的单元格如果没有退出单元格时,对应的单元格内容没有保存上的情况
怎么解决更好些?或者说怎么通过命令让用户在保存前退出当前编辑单元格?
3.这个AcceptChanges,有时会出现新增多个空行的问题!
使用dt.AcceptChanges();
保存代码如下
//dgvInfoEdit.AllowAddNew = false;//该行的作用是取消datagridview行的编辑状态,否则不能保存当前行的更新数据。
//dgvInfoEdit.AllowAddNew = false;//该行的作用是取消datagridview行的编辑状态,否则不能保存当前行的更新数据。
SqlCommandBuilder scb = new SqlCommandBuilder(sda); //用于生成更新语句,必须有
//sda.UpdateCommand = scb.GetUpdateCommand();
//sda.DeleteCommand = scb.GetDeleteCommand();
//sda.InsertCommand = scb.GetInsertCommand();
int resultCount = sda.Update(dt);
//不能加这个AcceptChanges,加上可能会出现录入多出空行的问题
//dt.AcceptChanges();
如果有类似的解决方案,帮忙提供一个示例参考一下,多谢!
|