有一个窗体中有一按钮,名称为“退出窗口”
想实现当没有数据修改时,直接退出。
当有数据修改时(包括新增行、删除行、修改行三种状态)时给出提问是否对数据进行保存。点击是进行保存,否撤消对表的修改并退出窗口。
按钮代码如下:
'''
For Each dr As DataRow In CurrentTable.DataTable.DataRows
If dr.RowState <> DataRowState.Unchanged Then '如果不是未曾修改的行,执行保存提示
Dim Result As DialogResult
Result = MessageBox.Show("您尚有数据未曾保存。是否进行保存操作后再退出!","保存提示!",MessageBoxButtons.YesNo,MessageBoxIcon.Question)
If Result = DialogResult.Yes Then
CurrentTable.DataTable.Save() '保存数据
MessageBox.Show("保存数据成功!","操作提示!",MessageBoxButtons.OK,MessageBoxIcon.Information)
e.Form.Close() '退出窗口
Else
CurrentTable.DataTable.RejectChanges() '撤消修改
e.Form.Close() '退出窗口
End If
Else
e.Form.Close() '没有存在未修改或新增的行时直接退出窗口
End If
Next
现在没有改过数据时可以实现需求;
修改数据、新增行时也可以实现需求。
但是当删除了行时并不会给出提示,而是直接退出了窗口,相当于没有数据修改。
请问如何修改?谢谢。
此主题相关图片如下:rowstate.png