PDA

View Full Version : [VB] come identificare una selezione in una TabControl()


race2
25-09-2002, 11:37
VB.NET,

Come posso fare per identificare quale "Tab" ho cliccato su una "TabControl" ???

cioe':

Se io ho aggiunto 3 schede(Tab) al "TabControl" e voglio creare 3 eventi distinti e quindi mettero':

If ...tab1...Selected = True Then

MsgBox("Ho premuto la tab1")

ElseIf ...tab2...Selected = True Then

MsgBox("Ho premuto la tab2")

ElseIf ...tab3...Selected = True Then

MsgBox("Ho premuto la tab3")

EndIf


Come e' la sintassi corretta???

tas
25-09-2002, 12:04
Per prima cosa puoi sfruttare l'evento SelectIndexChanged, poi per intraprendere un'azione in base alla selezione hai tante possibilità, eccone alcune:

Private Sub TabControl1_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles TabControl1.SelectedIndexChanged
'primo modo: proprietà SelectedIndex
Select Case TabControl1.SelectedIndex
Case 0
Console.WriteLine("tabpage1")
Case 1
Console.WriteLine("tabpage2")
Case 2
Console.WriteLine("tabpage3")
End Select

'secondo modo: proprietà SelectedTab
If TabControl1.SelectedTab Is TabPage1 Then
Console.WriteLine("tabpage1")
ElseIf TabControl1.SelectedTab Is TabPage2 Then
Console.WriteLine("tabpage2")
ElseIf TabControl1.SelectedTab Is TabPage3 Then
Console.WriteLine("tabpage3")
End If

'terzo modo: proprietà SelectedTab.Name
Select Case TabControl1.SelectedTab.Name
Case "TabPage1"
Console.WriteLine("tabpage1")
Case "TabPage2"
Console.WriteLine("tabpage2")
Case "TabPage3"
Console.WriteLine("tabpage3")
End Select
End Sub

race2
25-09-2002, 12:44
OK, mlte grazie, preferisco il primo modo, ciao!