Window、Page与Frame

  • 一、Window
    • 1.模态窗口与非模态窗口
    • 2.Window类
    • 3.示例
  • 二、Page
    • 1.概述
    • 2.Page类
  • 三、Frame
    • 1.概述
    • 2.Frame类
    • 3.示例
  • 四、ViewBox
    • 1. 概述
    • 2. 详解
    • 3. 示例
  • 总结


一、Window

1.模态窗口与非模态窗口

在这里插入图片描述

2.Window类

属性说 明
Title获取或设置窗口的标题。
lcon设获取或设置窗口的图标。
WindowStartupLocation获取或设置窗口首次显示时的位置。
WindowState获取或设置一个值,该值指示窗口是处于还原、最小化还是最大化状态。
WindowStyle获取或设置窗口的样式
方法说 明
Activate()将窗口激活并将其带到前台
Close()关闭窗口
ShowDialog()显示窗口并等待窗口关闭后才返回(模态)
Show()显示窗口并返回(非模态)
Hide()隐藏窗口

3.示例

private void buttonMT_Click(object sender, RoutedEventArgs e)
{Window1 window = new Window1();window.ShowDialog();
}private void buttonFMT_Click(object sender, RoutedEventArgs e)
{Window1 window = new Window1();//设置父窗口,父窗口关闭时,子窗口一起关闭window.Owner = this;// 计算模态窗口的位置,以显示器左上角为起点,左,上,右,下double left = Left + (Width - window.Width) / 2;double top = Top + (Height - window.Height) / 2;// 设置模态窗口的位置window.Left = left;window.Top = top;//改成 w.Show(); 可测试非模态窗口window.Show();
}
<Grid><Button x:Name="buttonMT" Content="模态窗口" HorizontalAlignment="Left" Margin="111,107,0,0" VerticalAlignment="Top" Height="94" Width="189" Click="buttonMT_Click"/><Button x:Name="buttonFMT" Content="非模态窗口" HorizontalAlignment="Left" Margin="481,107,0,0" VerticalAlignment="Top" Height="94" Width="189" Click="buttonFMT_Click"/>
</Grid>

在这里插入图片描述

二、Page

1.概述

Page类 表示可导航的页面,一般和 Frame 或 NavigationWindow 搭配使用
官方文档:https://learn.microsoft.com/zh-cn/dotnet/api/system.windows.controls.page?view=netframework-4.8
在这里插入图片描述

2.Page类

Page类的部分属性如下:
在这里插入图片描述

三、Frame

1.概述

Frame类 是一种支持导航页面的内容控件,内部可以显示Page。
官方文档:https://learn.microsoft.com/zh-cn/dotnet/api/system.windows.controls.frame?view=netframework-4.8
在这里插入图片描述

2.Frame类

Frame类的部分属性如下:
在这里插入图片描述

3.示例

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

public partial class MainWindow : Window
{public MainWindow(){InitializeComponent();}private void button1_Click(object sender, RoutedEventArgs e){frame.Content = new Page1();}//Navigate有四种重载方式,此处演示两种private void button2_Click(object sender, RoutedEventArgs e){frame.Navigate(new Uri("Page2.xaml",UriKind.RelativeOrAbsolute));}private void button3_Click(object sender, RoutedEventArgs e){frame.Navigate(new Page3());}private void buttonForword_Click(object sender, RoutedEventArgs e){if (frame.CanGoForward) {frame.GoForward();}}private void buttonBack_Click(object sender, RoutedEventArgs e){if (frame.CanGoBack){ frame.GoBack(); }}
}
    <Grid><Frame x:Name="frame" Background="LightGray" Width="600" Height="300" Content="" Margin="100,10,100,125"/><Button x:Name="buttonForword" Content="返回" HorizontalAlignment="Left" Margin="100,337,0,0" VerticalAlignment="Top" RenderTransformOrigin="0.288,0.263" Height="26" Width="71" Click="buttonForword_Click"/><Button x:Name="buttonBack" Content="翻页" HorizontalAlignment="Left" Margin="629,337,0,0" VerticalAlignment="Top" RenderTransformOrigin="0.288,0.263" Height="26" Width="71" Click="buttonBack_Click"/><Button x:Name="button1" Content="1" HorizontalAlignment="Left" Margin="312,337,0,0" VerticalAlignment="Top" RenderTransformOrigin="0.288,0.263" Height="26" Width="38" Click="button1_Click"/><Button x:Name="button2" Content="2" HorizontalAlignment="Center" Margin="0,337,0,0" VerticalAlignment="Top" RenderTransformOrigin="0.288,0.263" Height="26" Width="38" Click="button2_Click"/><Button x:Name="button3" Content="3" HorizontalAlignment="Left" Margin="451,337,0,0" VerticalAlignment="Top" RenderTransformOrigin="0.288,0.263" Height="26" Width="38" Click="button3_Click"/></Grid>

四、ViewBox

1. 概述

ViewBox类,可以拉伸或缩放控件,使用这个控件使界面随屏幕尺寸变化而自动缩放。
官方文档:https://learn.microsoft.com/zh-cn/dotnet/api/system.windows.controls.viewbox?view=netframework-4.8

在这里插入图片描述

2. 详解

ViewBox类的部分属性如下所示
在这里插入图片描述

3. 示例

在这里插入图片描述

总结

  • ShowDialog() 显示窗口并等待窗口关闭后才返回(模态),Show() 显示窗口并返回(非模态)
  • ViewBox可使控件内的子控件同步拉伸放大或缩小

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/news/913523.shtml
繁体地址,请注明出处:http://hk.pswp.cn/news/913523.shtml
英文地址,请注明出处:http://en.pswp.cn/news/913523.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

设计模式---观察者模式(发布-订阅模式)

设计模式—观察者模式(发布-订阅模式) 一、简介 发布-订阅模式是一种消息传递模式&#xff0c;用于实现对象间的一对多依赖关系。在这种模式中&#xff1a; 发布者&#xff08;Publisher&#xff09;不直接向订阅者&#xff08;Subscriber&#xff09;发送消息发布者和订阅者…

一文讲清楚React Fiber

文章目录一文讲清楚React Fiber1. 基础概念1.1浏览器刷新率&#xff08;帧&#xff09;1.2 JS执行栈1.3 时间分片1.4 链表2. React Fiber是如何实现更新过程控制2.1 任务拆分2.2挂起、恢复、终止2.2.1 挂起2.2.2 恢复2.2.3 终止2.3 任务具备优先级一文讲清楚React Fiber 1. 基…

(3)机器学习小白入门 YOLOv: 解锁图片分类新技能

(1)机器学习小白入门YOLOv &#xff1a;从概念到实践 (2)机器学习小白入门 YOLOv&#xff1a;从模块优化到工程部署 (3)机器学习小白入门 YOLOv&#xff1a; 解锁图片分类新技能 前言 YOLOv 算法通常被用于目标检测任务&#xff0c;但通过对其进行适当的调整和改造&#xff0c…

主机安全-开源HIDS字节跳动Elkeid使用

安装好elkeid后就开始接入主机和k8s集群&#xff0c;安装文档-----主机安全-开源HIDS字节跳动Elkeid安装-CSDN博客 1、接入主机 在系统管理-----安装配置-----复制命令------在目标机器上执行这段命令 执行成功后主机就会自动接入 2、接入k8s集群 在k8s主机上执行脚本&#x…

【vue】用conda配置nodejs,一键开通模版使用权

特此鸣谢我的好同学重中之重的特级教学&#xff0c;非常之好用一、conda环境下载安装二、创建包含nodejs的conda环境创建一个新环境&#xff1a;conda create -n 【自定义环境名字】 python3.9 conda create -n my_nodejs_env python3.9激活新环境&#xff1a;conda activate【…

深度学习--tensor(创建、属性)

一、torch概念1.1简介pytorch简称torch&#xff0c;意为深度学习框架。它使用张量&#xff08;tensor&#xff09;来表示数据&#xff0c;可以轻松地处理大规模数据集&#xff0c;且可以在GPU上加速。pytorch基本功能&#xff1a;自动微分、自动求导等。1.2安装官网获得下载命令…

【内存】Linux 内核优化实战 - net.ipv4.tcp_max_tw_buckets

目录net.ipv4.tcp_max_tw_buckets 详解一、基本概念二、核心作用三、默认值四、调整场景需增大参数的场景需减小参数的场景五、查看与修改方法1. 查看当前值2. 临时修改&#xff08;重启失效&#xff09;3. 永久修改&#xff08;重启生效&#xff09;六、注意事项总结net.ipv4.…

短剧系统开发定制全流程解析:从需求分析到上线运营

一、短剧行业现状与系统开发价值短剧作为一种新兴的内容形态&#xff0c;近年来呈现爆发式增长态势。2023年中国短剧市场规模已突破300亿元&#xff0c;用户规模超过5亿&#xff0c;这种以"快节奏、强剧情、低成本"为特点的内容形式正在重塑数字娱乐产业格局。短剧系…

各服务器厂商调整BIOS睿频教程

调整BIOS睿频选项汇总&#xff1a;1、华为服务器&#xff1a;2、华为服务器V53、浪潮服务器4、浪潮服务器M45、 曙光服务器5.1 曙光I620-G205.2 曙光I620-G306、联想服务器&#xff08;650系列&#xff09;650系列的服务器对照截图信息修改对应项&#xff0c;修改为截图里的选项…

PyTorch笔记3----------统计学相关函数

1.基础函数 import torch a torch.rand(2,2) print("a:\n",a) print(########################) print("平均值:\n",torch.mean(a,dim0)) print("总和:\n",torch.sum(a,dim0)) print("所有元素的积:\n",torch.prod(a,dim0)) print(&…

【Prometheus】通过tar包部署单机版Prometheus 和 Pushgateway

在ECS&#xff08;Elastic Compute Service&#xff09;机器上通过tar包部署 Prometheus 和 Pushgateway&#xff0c;并配置 Prometheus 采集 Pushgateway 的数据&#xff0c;是一个常见的监控部署任务。以下是详细的步骤说明&#xff1a;&#x1f9e9; 环境准备 操作系统&…

Matlab 频谱分析 (Spectral Analysis)

文章目录1. 信号预处理 - 去直流分量2. 快速傅里叶变换&#xff08;FFT&#xff09;3. 功率谱密度&#xff08;PSD&#xff09;计算4. 主频率检测5. 谱质心计算6. 对数谱显示完整的信号处理流程实际应用示例1. 信号预处理 - 去直流分量 data data - mean(data);数学原理&…

【实时Linux实战系列】实时以太网与 TSN 基础

在实时系统中&#xff0c;网络通信的实时性和可靠性是确保系统正常运行的关键。实时以太网和时间敏感网络&#xff08;TSN&#xff09;技术为实时数据传输提供了强大的支持。TSN通过一系列协议和机制&#xff0c;确保数据能够在预定的时间内可靠传输&#xff0c;满足工业自动化…

茶颜悦色JAVA面试分享

1、自我介绍项目2、设计一个爆款饮品秒杀系统&#xff1a;如何解决“幽兰拿铁”上新时的瞬时10万QPS&#xff1f;从缓存、限流、库存扣减到订单创建的全流程设计。3、订单超市未支付自动取消&#xff1a;如何实现高精度&#xff08;30分钟精确到秒&#xff09;且低延迟的订单状…

OneCode图表配置速查手册

前言 在数据可视化日益成为业务决策核心驱动力的今天&#xff0c;高效、灵活的图表配置系统已成为开发人员不可或缺的工具。OneCode图表组件凭借其丰富的图表类型与精细化的配置能力&#xff0c;为开发者提供了构建专业数据可视化界面的完整解决方案。然而&#xff0c;随着图表…

二维码驱动的独立站视频集成方案

一、独立站视频嵌入的技术挑战与架构设计 在独立站建设中&#xff0c;视频内容的集成面临着性能、安全与用户体验的三重挑战。传统直接嵌入方式会导致页面加载缓慢&#xff08;平均增加3-5秒首屏时间&#xff09;、服务器带宽消耗激增&#xff08;单视频日均播放1000次约产生50…

【STM32】预分频因子(Prescaler)和重装载值(Reload Value)

在 STM32 的 独立看门狗&#xff08;IWDG&#xff09; 中&#xff08;结合上文【STM32】独立看门狗&#xff08;提供完整实例代码&#xff09;&#xff09;&#xff0c;为了控制看门狗的超时时间&#xff08;溢出时间&#xff09;&#xff0c;我们主要设置两个参数&#xff1a;…

从0到1搭建同城O2O外卖平台:外卖系统源码架构解析与实战指南

当下&#xff0c;越来越多的创业者、品牌连锁商家&#xff0c;甚至社区集群&#xff0c;开始布局属于自己的本地外卖平台。而对于软件开发者和技术团队而言&#xff0c;如何从0到1搭建一套可落地、可扩展、可持续运营的外卖系统&#xff0c;成为了一个既现实又挑战性十足的话题…

MySQL 8.0 OCP 1Z0-908 题目解析(16)

题目61 Choose the best answer. Examine this command, which executes successfully: mysqlbackup --defaults-file/backups/server-my.cnf --backup-dir/backups/full copy-backWhich statement is true about the copy-back process? ○ A) It restores files from the da…

WSL命令

以下是 WSL&#xff08;Windows Subsystem for Linux&#xff09;的常用命令大全&#xff0c;涵盖安装、管理、网络、文件交互等场景&#xff0c;方便快速查阅和使用&#xff1a;1. 安装与版本管理命令说明wsl --install默认安装 WSL 和 Ubuntuwsl --install -d <发行版名&g…