Как проверить, какая вкладка выбрана в VB.net TabControl

У меня есть TabControl с двумя страницами табуляции, и мне было интересно, какой лучший способ проверить, какая вкладка отображается в настоящее время? Не знаю, почему я не могу разобраться в этом...

10 ответов



используйте эту вкладку " ENTER EVENT " например.

   Private Sub TabName_Enter(ByVal sender As Object, ByVal e As System.EventArgs) Handles TabName.Enter
        MsgBox("me the tab selected")
         'or do whattever u like
    End Sub

Private Sub TabControl_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TabControl.SelectedIndexChanged
    If TabControl.SelectedTab Is tabMyTab Then
        ' do whatever...
    End If
End Sub

TabControl.SelectedTab.

здесь ссылке.


Если вы используете .Net 3.5, вы можете создать метод IsSelected в качестве метода расширения, если хотите:

Public Module TabControlExtensions
    <Extension()> _
    Public Function IsSelected(ByVal tabPage As TabPage) As Boolean
        Dim tabControl = CType(tabPage.Parent, TabControl)
        Return (tabControl.SelectedTab Is tabPage)
    End Function
End Module

предполагая, что это приложение WPF, убедитесь, что каждый TabItem имеет имя.

тогда это просто вопрос проверки.

if tabItem1.IsSelected = true then
  ' Do Something 
else if tabItem2.IsSelected = true then
  ' Do Something 
end if 

попробуйте установить" тег " propety для каждой отдельной вкладки с помощью редактора коллекции TabPages. Установите каждый тег на число, представляющее последовательность вкладок (начиная с 1 или 0 или что угодно)

Private Sub TabControl1_Click(sender As Object, e As System.EventArgs) Handles TabControl1.Click

    Dim ActiveTabNumber as Integer = TabControl1.SelectedTab.Tag

End Sub

можно также сделать следующее:

Dim TabName As String

TabName = YourTabControl.SelectedTab.Name

If TabName.Contains("YourTabName") Then
    ' Do something
End If

Попробуйте Это..

вот как изменить каждую вкладку при выборе тогда будет функция каждой вкладки

Первая Классификация |Второй Классификации |

Private Sub TabControlAction(ByVal sender As Object, ByVal e As System.EventArgs) Handles nameoftab.Click

        If nameoftab.SelectedTab.Text = "Second Grading" Then
            Msgbox("Second Grading is Selected")
''Place whatever your want

        Else
            Msgbox("First Grading is Selected")
''Place whatever your want
        End If

    End Sub

вы можете использовать оператор if elseif else.

эта работа для меня.


TabControl1_Click:
    If TabControl1.SelectedIndex = 0 Then
        ' Do Something       
    ElseIf TabControl1.SelectedIndex = 1 Then
        ' Do Something 
    End If
End Sub