TabControl 包含UserControl触发切换TabItem失效的解决方案
来源:互联网 发布:淘宝与描述相符评分 编辑:程序博客网 时间:2024/04/30 17:20
RT
当前需求为TabControl内包含多个TabItem,例如TabItem1、TabItem2....
TabItem1 内包含一个自己编写的UserControl,同时注册了一个委托事件,绑定在UserControl的一个 Label上,当双击Label时,页面自动跳转到TabItem2.
//添加一个委托 public delegate void ReOpenNextFile(ShowFileInfo nextFile); //添加一个PassDataBetweenFormHandler类型的事件 public event ReOpenNextFile OpenNextFileEvent;
但是实际使用时,发现TabControl会将SelectItem切换到TabItem2,然后瞬间切回TabItem1,(UI显示不出来,通过断点发现的)
在网上查询了很多资料,没有应用于TabControl中TabItem包含UserControl切换的解决方案
自己没办法动了一下只会CV的大脑,因为是通过UserControl的MouseDoubleClick事件点击实现调转,是不是UserControl的DoubleClick事件处理后(已经跳转到TabItem2了),Click事件又传到了 TabItem1上,导致焦点转回TabItem1.
事实果然如此~
监听TabItem的MouseDoubleClick事件,过滤该控件的触发,如果是控件内引发的事件过滤,代码如下:
void TabItem_MouseDoubleClick(object sender, MouseButtonEventArgs e) { if (e.Source is TabItem) { e.Handled = true; Debug.WriteLine(MainTabControl.SelectedIndex.ToString()); } }
0 0
- TabControl 包含UserControl触发切换TabItem失效的解决方案
- WPF:TabItem的Header拉伸的TabControl
- 为WPF中TabControl的TabItem添加图片
- TabControl中TabItem改变事件
- WPF 中关于TabControl选项卡中UserControl的问题
- wpf TabControl TabItem 被点击信息
- 页面(Page)加载用户控件(UserControl)的事件触发顺序
- 页面(Page)加载用户控件(UserControl)的事件触发顺序
- UserControl中TextBox设置Focus失效的问题
- UserControl中TextBox设置Focus失效的问题2
- TabControl与UserControl合伙吃内存
- TabControl与UserControl合伙吃内存
- c# tabcontrol 点击不同的tabpage 触发不同的事件
- c# tabcontrol 点击不同的tabpage 触发不同的事件
- C#tabcontrol如何指定某个tabItem为默认页
- WPF控件TabControl和TabItem原模板分析
- WPF TabControl中纵向显示TabItem及标题文字
- 关于TabControl换页时触发过程的函数问题
- VS2012 输入中文变"??"解决办法
- SlidingMenu实现侧滑效果
- 程序员做业余项目的重要性
- 在OpenCV for Android 2.4.5中使用SURF(nonfree module)
- ios拨打电话,可以返回程序
- TabControl 包含UserControl触发切换TabItem失效的解决方案
- DrawerLayout实现侧滑
- 音频管理器AudioManager笔记
- JAVA随堂笔记课【二】:语言基础
- jquery设置元素的readonly和disabled
- 学习心得之如何将设计模式运用到实际编码中
- UML类图几种关系的总结
- Maven的安装
- Android NDK 和 OpenCV 整合开发总结