WPF 控件(九)WPF控件上下显示的优先级的两种方法:Xaml方式、C#后台代码动态改变的方式

时间:2024-04-05 12:54:34

一、简介

我的目的,动态改变控件上下显示的优先级,比如点击按钮,视频监控画面显示:

WPF 控件(九)WPF控件上下显示的优先级的两种方法:Xaml方式、C#后台代码动态改变的方式

再次点击,监控画面不显示:

WPF 控件(九)WPF控件上下显示的优先级的两种方法:Xaml方式、C#后台代码动态改变的方式 

二、解决方法

1、方法1:Xaml方式(这种方法不能动态)

   <Frame x:Name="Frame" Height="1092" Width="1920" Source="Views/StudyPage.xaml" NavigationUIVisibility="Hidden" Panel.ZIndex="1"/>

2、方法2:C#后台代码方式

   int iCameraFlag = 0;//0:关闭。1:打开。
        private void Camera_Click(object sender, RoutedEventArgs e)
        {
            if (iCameraFlag == 0)//如果在关闭状态下,那就打开它。
            {
                iCameraFlag = 1;
                //显示窗口
                Panel.SetZIndex(imgVideoSurveillance, 2);//imgVideoSurveillance是图片控件的名字;
                
                //Socket给主程序,启动USB视频监控,并将监控画面传输到当前窗口。
            }
            else if (iCameraFlag == 1)// 如果在打开状态下,那就关闭它。
            {
                iCameraFlag = 0;
                //关闭窗口
                Panel.SetZIndex(imgVideoSurveillance, 0);
                //Socket给主程序,关闭USB视频监控
            }
        }

3、方法3:绑定方式,没用过,大家可以试试。

<Frame x:Name="Frame" Height="1092" Width="1920" Source="Views/StudyPage.xaml" NavigationUIVisibility="Hidden" Panel.ZIndex="{PriorityBinding }"/>