Bindingsource行状态更改而不进行修改

时间:2017-03-22 14:31:50

标签: vb.net bindingsource rowstate

我有一个带有绑定控件和绑定导航器的表单。当用户在绑定导航器上单击下一个或上一个以检查是否存在更改时,我有一个事件,如果有,则询问他们是否要保存更改。我遇到的问题是,如果有时,在某些记录上保存该行已被修改,从而询问他们是否要保存。问题是没有任何修改。如何在调试时查看修改后的内容,以尝试解决行状态发生变化的原因

以下是我用来检查的代码的一部分:

Private Sub BindingNavigatorMoveNextItem_Click(sender As Object, e As EventArgs) Handles BindingNavigatorMoveFirstItem.Click, BindingNavigatorMoveLastItem.Click, BindingNavigatorMoveNextItem.Click, BindingNavigatorMovePreviousItem.Click
    Try
        FkTSTAFFSKILLSBindingSource.EndEdit()
        TSTAFFAVAILPERSBindingSource.EndEdit()

        Dim staffdrv As DataRowView = CType(Me.TSTAFFAVAILPERSBindingSource.Current, DataRowView)
        Dim skilldrv As DataRowView = CType(Me.FkTSTAFFSKILLSBindingSource.Current, DataRowView)
        If staffdrv.Row.RowState = DataRowState.Modified Or skilldrv.Row.RowState <> DataRowState.Unchanged Then

显示为true的staffdrv.Row.RowState = DataRowState.Modified。现在它不会每次都发生,只在某些记录上发生。

请帮忙,我一直在撞墙挡了一个多星期,试图解决这个问题。

0 个答案:

没有答案