WPF中的tabcontrol问题

eennddyy 2013-12-31 01:13:25
有A和B两个窗口,A窗口为主窗口,上有一个TabControl控件,其中有三个标签页a1,a2,a3。
在B窗口中有个按钮用于更改该Tabcontrol的
tabcontrol.SelectedIndex = 1;
为什么第一次的时候可以成功,之后再点击按钮后,该tabcontrol在A窗口被选中后,其SelectedIndex又变成之前选择的标签页了呢(非1),在A窗口未选中前其SelectedIndex还是所设置的1? 求大神解释;
...全文
344 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
杨门剑侠 2014-02-07
  • 打赏
  • 举报
回复
引用 5 楼 eennddyy 的回复:
[quote=引用 3 楼 loryrichie 的回复:] 你不应该这样去先择。最好,每个tabItem给外Name,然后用 TabItem tb = MainWindow.FindName("Item1") as tabitem; //MainWindow为主前窗体,Item1就是tableItem的名字,变量传入就可以了 if (tb!= null)//判断是否找到,以免在未添加前就误点了 { tb.Focus(); }
感谢您的回答,你的这种方法我试过了,只在ShowDialog的情况下好使,在Show的情况下需要点击按钮两次后主页面的tabcontrol才将Item1选中;这个知道怎么回事吗?有解决方法吗?[/quote] 我遇到过这个问题,但是没有解决掉,而是在主窗口中,主窗口中有一个winform的控件,也要点两次Item1,才能控制里面的winform的控件(暂时还没有找到替代winform的控件的方法),这个问题研究一下,如果有进展我告诉你。
eennddyy 2014-01-27
  • 打赏
  • 举报
回复
引用 3 楼 loryrichie 的回复:
你不应该这样去先择。最好,每个tabItem给外Name,然后用 TabItem tb = MainWindow.FindName("Item1") as tabitem; //MainWindow为主前窗体,Item1就是tableItem的名字,变量传入就可以了 if (tb!= null)//判断是否找到,以免在未添加前就误点了 { tb.Focus(); }
感谢您的回答,你的这种方法我试过了,只在ShowDialog的情况下好使,在Show的情况下需要点击按钮两次后主页面的tabcontrol才将Item1选中;这个知道怎么回事吗?有解决方法吗?
eennddyy 2014-01-27
  • 打赏
  • 举报
回复
感谢您的回答,你的这种方法我试过了,只在ShowDialog的情况下好使,在Show的情况下需要点击按钮两次后主页面的tabcontrol才将Item1选中;这个知道怎么回事吗?有解决方法吗?
杨门剑侠 2014-01-14
  • 打赏
  • 举报
回复
你不应该这样去先择。最好,每个tabItem给外Name,然后用 TabItem tb = MainWindow.FindName("Item1") as tabitem; //MainWindow为主前窗体,Item1就是tableItem的名字,变量传入就可以了 if (tb!= null)//判断是否找到,以免在未添加前就误点了 { tb.Focus(); }
eennddyy 2014-01-03
  • 打赏
  • 举报
回复
实际代码: A.xaml: <Window> <Grid> <TabControl Name="tabcontrol"> <TabItem Header="tabItem1"></TabItem> <TabItem Header="tabItem2"></TabItem> </TabControl> <Button click="button_Click">点击打开B窗口</Button> </Grid> </Window> B.xaml: <Window> <Grid> <Button click="button_Click"></Button> </Grid> </Window> B.xaml.cs: private void button_Click(object sender, RoutedEventArgs e) { (App.Current.MainWindow as A).tabcontrol.SelectedIndex = 1; } 大概的代码如上所示,有哪位大神给解释下啊,或者给个解决方法。
小猪八Q 2014-01-02
  • 打赏
  • 举报
回复
贴个代码看看吧

13,347

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 .NET技术前瞻
社区管理员
  • .NET技术前瞻社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧