0

我通过使用禁用了 PositionItem 框

BindingNavigatorPositionItem.Enabled = False

但是每次我单击下一行时,它都会再次启用。

我什至试图通过添加来强制禁用它

 Private Sub BindingNavigatorMoveNextItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BindingNavigatorMoveNextItem.Click
    BindingNavigatorPositionItem.Enabled = False
 End Sub

我如何控制它是否启用?

4

2 回答 2

2

参考:MSDN - 禁用绑定导航器

BindingNavigator 按钮的 Click 事件已被默认封装为基于 BindingNavigatorPosition 设置其他按钮的 Enable 属性,因此您可以设置Me.BindingNavigator1.PositionItem.Available = FalseBindingNavigatorPositionItem.Visible = False

您可以将事件的功能覆盖为:

Private Sub BindingNavigatorAddNewItem_Click(ByVal sender As Object, ByVal e As EventArgs) Handles BindingNavigatorAddNewItem.Click  
  BindingNavigator1.BeginInvoke(New MethodInvoker(AddressOf DisableItems))  
End Sub 

Private Sub DisableItems()  
  BindingNavigatorMoveFirstItem.Enabled = False 
  BindingNavigatorDeleteItem.Enabled = False 
  BindingNavigatorAddNewItem.Enabled = False 
  BindingNavigatorMoveLastItem.Enabled = False 
  BindingNavigatorMoveNextItem.Enabled = False 
  BindingNavigatorMovePreviousItem.Enabled = False 
  BindingNavigatorPositionItem.Enabled = False 
End Sub`   
于 2012-05-04T14:49:01.260 回答
0

您可以将BindingNavigatorPositionItem.Enabled = False语句放在BindingNavigatorPositionItem的CotFocus 事件处理程序中, 如下所示:

Private Sub BindingNavigatorPositionItem_GotFocus(ByVal sender As Object,
                                                  ByVal e As System.EventArgs) Handles BindingNavigatorPositionItem.GotFocus
    BindingNavigatorPositionItem.Enabled = False
End Sub
于 2016-03-19T07:46:04.833 回答