2013-01-09 16 views
0

我有一个带有两个选项卡(A,B)的WPF选项卡控件。由于TabItem上没有Clicked事件,因此我在Tab B上添加了一个previewMouseDown事件,并且messageBox将显示出来。但是,在关闭messageBox后,我的应用程序将不会导航到Tab B.任何人都可以帮助我?标签在选项卡的PreviewMouseDown事件上添加MessageBox后无法导航

C#代码片段:

private void MyTabB_PreviewMouseDown(object sender, MouseButtonEventArgs e) 
    { 
     MessageBox.Show("Please login"); 
    } 

回答

1

可以使用TabControlSelectionChanged事件。

既然你知道登录所选选项卡说指数0,改变选定的选项卡后,在MessageBox即是这样的

MyTabB_SelectionChanged(object sender, SelectionChangedEventArgs e) 
{ 
    TabControl tc= ((TabControl)sender; 
    if(tc.SelectedIndex == tc.Items.IndexOf(A/*Login tab*/)) 
     { 
     MessageBox.Show("Login") 
     tc.SelectedIndex = tc.Items.IndexOf(B); 
     } 
} 

这意味着,只要你选择一个你将消息框弹出,那么你登录。

另外,为什么不在A中放置一个按钮或ClickedEvent的任何控件,然后单击时tc.SelectedIndex被更改。

相关问题