2012-04-26 94 views
0

有沒有方法來設置tabControl的選定選項卡而沒有selectedIndexchanged事件觸發?設置選定的選項卡沒有selectedIndexChanged事件觸發

例如在這裏,事件觸發選擇myTabPage2時,因爲myTabPage1是默認:

Private Sub setupTabControl 
    If blnHasAccount=true then 
     MyTabControl.selectedTab=myTabPage1 
    else 
     MyTabControl.selectedTab=myTabPage2 
    End if 
End sub 

Private Sub MyTabControl_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyTabControl.SelectedIndexChanged 
    'Do stuff (but only when user has actually changed the tab themselves) 
End Sub 

回答

1

當您設置新的標籤頁,你可以刪除事件處理程序

Try 
    RemoveHandler MyTabControl.SelectedIndexChanged, AddressOf Me.MyTabControl_SelectedIndexChanged 
    .. do your works to change page here 
    .. and then reconnect 
Finally 
    AddHandler MyTabControl.SelectedIndexChanged, AddressOf Me.MyTabControl_SelectedIndexChanged 
End Try 

一個try附上一切終於恢復是非常重要的從例外情況正確

+0

聰明。似乎運作良好。我感激不盡。 :-) – Urbycoz 2012-04-26 11:31:24

-1

可以僞造並檢查ComboBox.Enabled作爲標誌在SelectedIndexChanged事件中使用,同時進行更改,然後在完成時設置爲true。但是這樣的事件仍然會引發(應該是這樣),但至少可以確保Global ComboBox變量的狀態。