2009-09-24 24 views

答えて

1

は、それぞれのTabItemは名前を持っていることを確認してください...わかりません。

次に、チェックするだけです。

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

うん、これは私がそれを行う方法を考え出すされた方法ですが、何のメンバーがIsSelectedを呼び出していないか、選択があります(1または0または任意で始まるは合わせて) SelectedTabをちょっと使ってはいけないと思いますが、ちょっと醜いですが、うまくいきます。 –

+1

これにちょっとしたことがありますが、IsSelectedはWPF TabItemクラスでのみ使用可能です。 WinFormsは、IsSelectedプロパティをサポートしていません。 –

2

あなたは.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 
5
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 
+0

クローズフォームのイベントを制御するために働いてくれました! – fedeteka

0

は、次のことが可能です。

Dim TabName As String 

TabName = YourTabControl.SelectedTab.Name 

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

使用することをタブの「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 
0

これを試してみてください。..

これは を選択したときに最初にグレーディング

各タブの機能があるだろうタブのそれぞれを変更する方法である|セカンドグレーディング|

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 else else文を使用することはできますが、

この検索は私には役に立ちます。

1

TabPagesコレクションエディタを使用して、個々のタブごとに「タグ」を設定してみてください。タブの順序を表す番号に各タグを設定し

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

    Dim ActiveTabNumber as Integer = TabControl1.SelectedTab.Tag 

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

こんにちは、スタックオーバーフローへようこそ!良い答えのように見えますし、うまくいけばOPの問題をうまく解決できます(私はVBプログラマではありません)...私はちょうどあなたの答えを拡張し、なぜそれが問題を解決するのか。私たちは多くの初心者、あるいは私のようなプログラミングに優れている人ですが、この言語ではない...多くの説明が、コードスニペットの理解を深めるうえで役立ちます。 –

関連する問題