2009-05-08 15 views
7

con .NET Framework 2.0/3.5 TabControl, puedo seleccionar una ficha programación utilizando la propiedad selectedTab como se muestra en el siguiente código:¿Cómo selecciono programáticamente una pestaña en un .NET CF TabControl?

//toggles between tabPage1 and tabPage2 
private void button1_Click(object sender, EventArgs e) 
{ 
    if (tabControl1.SelectedTab == tabPage1) 
     tabControl1.SelectedTab = tabPage2; 
    else 
     tabControl1.SelectedTab = tabPage1; 
} 

El compacto TabControl .NET Framework no tiene selectedTab propiedad como su contraparte de .NET Framework. Entonces, ¿cómo selecciono una pestaña programáticamente?

Respuesta

21

TabControl.SelectedIndex

+0

Encontré que cuando se selecciona TabControl, no se visualiza correctamente. Parece que después de seleccionar un TabControl es útil actualizarlo, por lo que, cuando el TabControl se llame TabForm y tenga varias pestañas, esto podría ser: 'Me.TabForm.SelectedIndex = 0 Me.TabPg0.Refresh 'Donde está TabPg0 el nombre de la pestaña en el índice 0' –

-2

código de WPF, intente esto:

if (tabControl1.SelectedValue == tabPage1) 
    tabControl1.SelectedValue = tabPage2; 
else 
    tabControl1.SelectedValue = tabPage1; 
+0

WPF y el marco compacto no se mezclan, ¿no ...? (¿O me perdí algo?) – peSHIr

+0

Además, esto es exactamente lo que dice la pregunta: no funciona: se requería una alternativa de trabajo. – peSHIr

+0

Lo siento, me perdí la declaración de Compact, pero creo que SelectedValue funcionará en el marco compacto, le falta SelectedTab. –

0

programé este código. Cuando haga clic en TabPage1, entonces el programa se cerrará:

private void tabControl1_MouseClick(object sender, MouseEventArgs e) 
    { 
     if (tabControl1.SelectedTab == tabPage1) 
     { 
      MessageBox.Show("Logout!"); 
      Application.Exit(); 
     } 
    } 
0

en .Net 4 puede utilizar

if (tabControl1.Controls[5] == tabControl1.SelectedTab) 
       MessageBox.Show("Tab 5 Is Selected"); 

O

if (tabpage5 == tabControl1.SelectedTab) 
     MessageBox.Show("Tab 5 Is Selected"); 
+0

Esta pregunta no era sobre .NET 4; fue sobre .NET CF. –

0

He descubierto que cuando se selecciona el TabControl, lo hace no se visualiza correctamente Parece que después de seleccionar un TabControl es útil actualizarlo. Entonces, cuando el TabControl se llama TabForm y tiene varias pestañas, esto podría ser:

Me.TabForm.SelectedIndex = 0 
Me.TabPg0.Refresh   'Where TabPg0 is the name of the Tab at Index 0 
Cuestiones relacionadas