WPF 界面结构化处理

文章目录

    • 概要
    • 一、xaml界面结构化处理
    • 二、逻辑树与视觉树

概要

  • WPF 框架是开源的,但是不能跨平台,可以使用MAUI,这个框架可以跨平台,WPF源码可以在github上下载,下载地址:https://gitbub.com/dotnet/wpf。
  • 框架结构
    • 如图
      在这里插入图片描述

一、xaml界面结构化处理

  • XAML:eXtensible Application Markup Language的英文缩写,相应的中文名称为:可扩展应用程序标记语言。
  • 命名空间
    • 默认
    • 映射:x/d/mc
    • 代码如下
          <Window x:Class="WpfApp1.MainWindow"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"xmlns:d="http://schemas.microsoft.com/expression/blend/2008"xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"xmlns:local="clr-namespace:WpfApp1"mc:Ignorable="d"Title="MainWindow" Height="450" Width="800"> </Window>
      
  • xmal界面中的对象是一层包一层的,个人理解,类似于xml文档,主节点包括子节点,节点还有各种属性,以xaml中的Gride对象为例,代码如下:
      <Grid>//行<Grid.RowDefinitions> <RowDefinition></RowDefinition></Grid.RowDefinitions>//列<Grid.ColumnDefinitions><ColumnDefinition></ColumnDefinition></Grid.ColumnDefinitions></Grid>
    

二、逻辑树与视觉树

  • 查看分析工具:Snoopy
  • 层级关系
    • 逻辑开发
    • 视觉呈现
    • 逻辑树通常是指我们在UI逻辑中涉及到的界面元素。而视觉树是指系统在显示UI过程中显示的所有元素,它暴露了视觉的实现细节。

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

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

相关文章

【C++ 记忆站】命名空间

文章目录 命名空间概念命名空间的定义1、正常的命名空间定义2、命名空间可以嵌套3、同一个工程中允许存在多个相同名称的命名空间,编译器最后会合成同一个命名空间中 命名空间的使用1、加命名空间名称及作用域限定符2、使用using将命名空间中某个成员引入3、使用using namespac…

初试时间官宣!研招网发布下半年重要时间节点!今日速报来了

距24考研初试还有127天&#xff0c;今天给大家带来初试和报名时间官宣消息、考研报名注意事项、研招网发布的2024考研“保姆级”下半年重要时间节点。有用记得收藏 24考研报名和初试时间官宣 已有学校在招生简章中明确24考研初试时间 初试时间预计为&#xff1a;2023年12月23…

初试rabbitmq

rabbitmq的七种模式 Hello word 客户端引入依赖 <!--rabbitmq 依赖客户端--><dependency><groupId>com.rabbitmq</groupId><artifactId>amqp-client</artifactId><version>5.8.0</version></dependency> 生产者 imp…

邀请函|澎峰科技邀您参加CCF HPC China2023

一年一度的全球超算盛会&#xff01; 以“算力互联智领未来”为主题的第十九届全国高性能计算学术年会&#xff08;CCF HPC China 2023&#xff09;将于8月24-26日&#xff08;展览23-25日&#xff09;在青岛红岛国际会议展览中心举办。 九大院士领衔 打造顶级超算盛会 力邀…

《离散数学及其应用(原书第8版)》ISBN978-7-111-63687-8 第11章 11.1.3 树的性质 节 第664页的例9说明

《离散数学及其应用&#xff08;原书第8版&#xff09;》ISBN978-7-111-63687-8 第11章 11.1.3 树的性质 节 第664页的定理3的引申 定理3 带有i个内点的m叉树含有nmi1个顶点 见本人博文 内点定义不同的讨论 如果对于一个m叉正则树&#xff0c;即任意分支节点的儿子恰好有m个&am…

谈谈IP地址和子网掩码的概念及应用

个人主页&#xff1a;insist--个人主页​​​​​​ 本文专栏&#xff1a;网络基础——带你走进网络世界 本专栏会持续更新网络基础知识&#xff0c;希望大家多多支持&#xff0c;让我们一起探索这个神奇而广阔的网络世界。 目录 一、IP地址的概念 二、IP地址的分类 1、A类 …

长胜证券:散户可以随大流吗?怎么做才好?

在我国的股市里边&#xff0c;最不缺的或许便是散户了&#xff0c;一方面&#xff0c;散户促进了股市的活泼&#xff0c;可一方面又特容易望风而动&#xff0c;追涨杀跌。因此&#xff0c;散户能够随大流吗&#xff1f;该怎么做才好&#xff1f;对于这些&#xff0c;长胜证券为…

IntelliJ IDEA热部署:JRebel插件的安装与使用

热部署 概述JRebel 概述 热部署&#xff0c;指修改代码后&#xff0c;无需停止应用程序&#xff0c;即可使修改后的代码生效&#xff0c;其有利于提高开发效率。 热部署方式&#xff1a; 手动热部署&#xff1a;修改代码后&#xff0c;重新编译项目&#xff0c;然后启动应用程…

Springboot项目启动后按顺序加载自定义类 (demo)

1. 实现ApplicationRunner接口, 重写run方法 import lombok.extern.slf4j.Slf4j; import org.springframework.boot.ApplicationArguments; import org.springframework.boot.ApplicationRunner; import org.springframework.core.annotation.Order; import org.springframewor…

【C语言】const修饰普通变量和指针

大家好&#xff0c;我是苏貝&#xff0c;本篇博客带大家了解const修饰普通变量和指针&#xff0c;如果你觉得我写的还不错的话&#xff0c;可以给我一个赞&#x1f44d;吗&#xff0c;感谢❤️ 文章目录 一.const修饰普通变量二.const修饰指针1.const 放在 * 左边2.const 放在…

Nacos - 安装指南(Windows系统)

一、下载安装包 Nacos现在虽然已经出到二点几的版本&#xff0c;但二点几版本还处在测试阶段&#xff0c;我们选择下载成熟的 1.4.6 版本 下载地址&#xff1a;Nacos 1.4.6 GitHub的Release下载页 拉到页面最底部&#xff0c;可以看到下载按钮&#xff0c;windows版本使用naco…

htmlCSS-----弹性布局

目录 前言 什么是弹性布局 样式 学习概要 容器和项目 弹性布局的排列方式 1.横向排列&#xff08;默认样式&#xff09; 2.父元素容器的属性&#xff08;*5&#xff09; &#xff08;1&#xff09;主轴 代码示例&#xff1a; &#xff08;2&#xff09;交叉轴 3.子元素…

正则表达式试炼

序 我希望在这里列出我很多想写的正则表达式&#xff0c;很多我想写&#xff0c;但是不知道怎么写的。分享点滴案例。未来这个文章会越来越长 前言 互联网时代&#xff0c;除了文本还有更好的学习方式&#xff0c;下面是几个不错的练习网站&#xff0c;如果你想系统地学习&a…

【Linux】【驱动】应用层和驱动层传输数据

【Linux】【驱动】应用层和驱动层传输数据 绪论1.如果我在应用层使用系统0 对设备节点进行打开&#xff0c;关闭&#xff0c;读写等操作会发生什么呢? 2 我们的应用层和内核层是不能直接进行数据传输的3 驱动部分的代码4 应用代码5 编译以及运行代码 绪论 Linux一切皆文件! 文…

如何使用CSS实现一个下拉菜单?

聚沙成塔每天进步一点点 ⭐ 专栏简介⭐ 使用CSS实现下拉菜单⭐ HTML 结构⭐ CSS 样式⭐ 写在最后 ⭐ 专栏简介 前端入门之旅&#xff1a;探索Web开发的奇妙世界 记得点击上方或者右侧链接订阅本专栏哦 几何带你启航前端之旅 欢迎来到前端入门之旅&#xff01;这个专栏是为那些…

学习笔记」左偏树

dist 的性质 对于一棵二叉树&#xff0c;我们定义左孩子或右孩子为空的节点为外节点&#xff0c;定义外节点的 distdist 为 11&#xff0c;空节点的 distdist 为 00&#xff0c;不是外节点也不是空节点的 distdist 为其到子树中最近的外节点的距离加一。 一棵根的 distdist 为…

DevOps系列文章之 GitlabCICD自动化部署SpringBoot项目

一、概述 本文主要记录如何通过Gitlab CI/CD自动部署SpringBoot项目jar包。 二、前期准备 准备三台 CentOS7服务器&#xff0c;分别部署以下服务&#xff1a; 序号系统IP服务1CentOS7192.168.56.10Gitlab2CentOS7192.168.56.11Runner &#xff08;安装Docker&#xff09;3Cen…

Spring boot中的线程池-ThreadPoolTaskExecutor

一、jdk的阻塞队列&#xff1a; 二、Spring boot工程的有哪些阻塞队列呢&#xff1f; 1、默认注入的ThreadPoolTaskExecutor 视频解说&#xff1a; 线程池篇-springboot项目中的service层里简单注入ThreadPoolTaskExecutor并且使用_哔哩哔哩_bilibili 程序代码&#xff1a;…

预测算法|改进粒子群算法优化极限学习机IDM-PSO-ELM

回归拟合&#xff1a; 分类 本文是作者的预测算法系列的第四篇&#xff0c;前面的文章中介绍了BP、SVM、RF及其优化&#xff0c;感兴趣的读者可以在作者往期文章中了解&#xff0c;这一篇将介绍——极限学习机 过去的几十年里基于梯度的学习方法被广泛用于训练神经网络&am…

分布式 - 消息队列Kafka:Kafka 消费者消息消费与参数配置

文章目录 1. Kafka 消费者消费消息01. 创建消费者02. 订阅主题03. 轮询拉取数据 2. Kafka 消费者参数配置01. fetch.min.bytes02. fetch.max.wait.ms03. fetch.max.bytes04. max.poll.records05. max.partition.fetch.bytes06. session.timeout.ms 和 heartbeat.interval.ms07.…