If e.OldRange.RowSel <> e.NewRange.RowSel '如果选择的是不同的行
If e.OldRange.RowSel >= 0 AndAlso e.OldRange.Rowsel < e.Table.Rows.Count Then '而且原来选择的是一个有效的数据行
Dim r As Row = e.Table.Rows(e.OldRange.Rowsel) '获得原来选择的行
Dim p As String
If r.DataRow.RowState = DataRowState.Added Then
p = "A#"
r.Save()
Dim msg As String = p & e.Table.DataTable.Name & "#" & r("_Identify")
For Each bd As QQBuddy In QQClient.Buddies
If bd.Online Then
QQClient.Send(bd.name, msg)
End If
Next
Else If r.DataRow.RowState = DataRowState.Modified Then
p = "U#"
r.Save()'一定要在保存后合成信息,因为新增行的主键在保存后才生成
Dim msg As String = p & e.Table.DataTable.Name & "#" & r("_Identify")
For Each bd As QQBuddy In QQClient.Buddies
If bd.Online Then
QQClient.Send(bd.name, msg)
End If
Next
End If
End If
End If
事件代码改为上述代码,已经不会自动退出程序了
但是如果当前行修改或新增后没有选择下一行,而是直接进行筛选,就触发不了事件了。请问如何解决
[此贴子已经被作者于2018/7/9 9:49:17编辑过]