WPF中TabControl动态获取当前选中的TabItem

本文介绍了如何在WPF中使用TabControl组件,并详细阐述了如何添加SelectionChanged事件及响应方法,以便在TabItem切换时动态获取当前选中项并进行相应的页面更新。通过异步操作确保在窗口加载时能正确处理TabControl。此技术增强了界面的灵活性。
摘要由CSDN通过智能技术生成


前言

       TabControl组件是WPF中一个比较强大的组件了,他可以在一个窗口中实现多个页面来回切换。但很多时候我们需要根据选中的TabItem显示另外一部分的页面,这时我们就需要动态获取当前TabItem了。


一、添加事件

       我们需要在xaml文件中添加改变事件SelectionChanged = “SelectionChanged”,代码如下:

<TabControl x:Name="Control" SelectionChanged="SelectionChanged" HorizontalAlignment="Left" Height="760" Margin="5" VerticalAlignment="Top" Width="560" TabStripPlacement="Left">

二、添加事件响应

       代码如下:

public void SelectionChanged(object sender,SelectionChangedEventArgs e)
        {
            Dispatcher.BeginInvoke(new Action(() =>
            {
                var data = this.Control.SelectedItem as TabItem;
                var datas = data.Header; //主要是在后端获取到当前的TabItem的Heade 
                MessageBox.Show("content:" + this.Control.SelectedContent + "; index = " + this.Control.SelectedIndex + "; datas" + datas);
            }));
        }

       此处需要异步操作,如果不使用异步操作,在第一次加载窗口时TabControl还未加载,这样会导致你命名的TabControl是个空值,无法对其进行操作。


总结

       我们通过该方式就可以实现在切换TabControl的同时对页面其他部分进行修改,极大地提高了页面的灵活度。

参考:https://www.cnblogs.com/fishyues/p/10076489.html

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值