WPF 界面结构化处理

news2024/11/24 17:51:04

文章目录

    • 概要
    • 一、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.coloradmin.cn/o/873462.html

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

相关文章

【推荐系统】wss课程-排序

排序01-多目标模型 这节课的内容是推荐系统排序的多目标模型。这节课的内容分两部分。 - 第一部分是模型结构。模型把用户特征、物品特征、统计特征、场景特征作为输入&#xff0c;输出对多个指标的预估。 - 第二部分内容是降采样和校准。在实际的推荐系统中&#xff0c;正负…

Mybatis三剑客(一)在springboot中自动生成Mybatis【generator】

1、pom.xml中新增plugin <plugin><groupId>org.mybatis.generator</groupId><artifactId>mybatis-generator-maven-plugin</artifactId><version>1.3.7</version><configuration><overwrite>true</overwrite><…

Dynamic Web TWAIN Crack

Dynamic Web TWAIN Crack 文件编辑 提供 GUI 和非 GUI 图像编辑器 内置基本图像编辑界面&#xff0c;如旋转、裁剪、镜像、翻转、擦除和更改图像大小 支持向图像添加彩色矩形 支持文字注释 提供图像交换功能 支持清除图像的指定区域并用颜色填充清除的区域 内置变焦 提供多图像…

Simulink建模:位运算

本文研究Simulink中常用的按位运算的建模方法。 文章目录 1 引入2 位运算模块2.1 移位模块2.1 按位逻辑运算 3 代码生成4 位运算的应用4.1DBC矩阵解析4.2 bool信号打包 5 总结 1 引入 在计算机的基础课中&#xff0c;学过把一个十进制数转换成二进制数。例如&#xff0c;十进…

每天一道leetcode:712. 两个字符串的最小ASCII删除和(动态规划中等)

今日份题目&#xff1a; 给定两个字符串s1 和 s2&#xff0c;返回 使两个字符串相等所需删除字符的 ASCII 值的最小和 。 示例1 输入: s1 "sea", s2 "eat" 输出: 231 解释: 在 "sea" 中删除 "s" 并将 "s" 的值(115)加入…

【【萌新的STM32学习-8】】

萌新的STM32学习-8 STM32CubeMX 是由 ST 公司开发的图形化代码自动生成工具&#xff0c;能够快速生成初始化代码&#xff0c; 如配置 GPIO&#xff0c;时钟树&#xff0c;中间件等&#xff0c;使用户专注于业务代码的开发。现在 ST 主推 HAL 库代码&#xff0c; 经典的标准外设…

82. 删除排序链表中的重复元素 II

题目链接&#xff1a;力扣&#xff08;LeetCode&#xff09;官网 - 全球极客挚爱的技术成长平台 解题思路&#xff1a;设置一个新的哑元节点result&#xff0c;作为头节点&#xff0c;将head中不重复地节点依次链接到哑元节点后面&#xff0c;最后返回result.next 初始值&…

Dynamic CRM开发 - 实体介绍

实体简介 在CRM中,实体(Entity)是数据的基本载体,也是构建业务逻辑网络的基础节点。 实体可以理解为数据库中的一张表(实体中的字段对应数据库表的字段),比如创建一个实体存储客户信息,创建一个实体存储产品信息,产品实体里可以创建一个查找类型的字段(类似表的外键)…

尚医通(医院预约挂号系统)笔记

文章目录 一. 登录系统1. 手机登录1.1 业务流程1.2 代码1.3 JWT 2. 微信登陆2.1 业务流程2.2 代码2.3 OAthu2 3. 用户认证与网关整合 二. 预约挂号1. 业务流程及模块设计 一. 登录系统 1. 手机登录 1.1 业务流程 传入手机号和验证码校验手机号和验证码是否为空校验手机验证码…

阿里云新用户和老用户是如何界定的?产品首购资格是什么?

阿里云新用户条件是什么&#xff1f;针对新用户优惠有哪些&#xff1f;阿里云新用户怎么算&#xff1f;新用户购买云服务器、域名等更优惠&#xff0c;如何获取新用户特价资格&#xff1f;阿里云新用户是指从未购买阿里云产品的用户&#xff08;域名除外&#xff09;&#xff0…

《TCP IP网络编程》第十六章

第 16 章 关于 I/O 流分离的其他内容 16.1 分离 I/O 流 「分离 I/O 流」是一种常用表达。有 I/O 工具可区分二者&#xff0c;无论采用哪种方法&#xff0c;都可以认为是分离了 I/O 流。 2次 I/O 流分离&#xff1a; 第一种是第 10 章的「TCP I/O 过程」分离。通 shutdown(soc…

英语——时态

动词随着所表现出的时间而改变的形态&#xff0c;称为时态&#xff0c;包含以下12种 现在过去将来一般一般现在时一般过去时一般将来时进行现在进行时过去进行式将来进行时完成现在完成时过去完成时将来完成时完成进行现在完成进行时过去完成进行时将来完成进行时 1 现在时 …

考公-判断推理-类比推理

第七节课 例题 例题 例题 例题 目无全牛&#xff1a;很熟练 不以为然&#xff1a;不认为正确 不孚众望&#xff1a;不能让人信服 例题 步人后尘&#xff1a;走别人的老路 例题 见义勇为是助人为乐的一种 例题 例题-全同 例题 并列关系 例题 例题 例题 例题 进士…

C++QT教程3——手册4.11.1自带教程(笔记)——创建一个基于Qt Widget的应用程序

文章目录 创建一个基于Qt Widget的应用程序创建Text Finder项目素材文件 填补缺失的部分设计用户界面完成头文件完成源文件创建资源文件 编译和运行程序 参考文章 创建一个基于Qt Widget的应用程序 本教程介绍如何使用Qt Creator创建一个小型Qt应用程序&#xff0c;名为Text F…

docker — 容器网络

一、概述 Docker容器每次重启后容器ip是会发生变化的。 这也意味着如果容器间使用ip地址来进行通信的话&#xff0c;一旦有容器重启&#xff0c;重启的容器将不再能被访问到。 而Docker 网络就能够解决这个问题。 Docker 网络主要有以下两个作用&#xff1a; 容器间的互联…

阿里云轻量应用服务器_2核4G4M_2核2G3M_性能测评

阿里云轻量应用服务器2核2G3M带宽108元一年&#xff0c;系统盘为50GB高效云盘&#xff1b;轻量服务器2核4G4M带宽&#xff0c;60GB高效云盘297.98元12个月。目前轻量应用服务器只有2核2G和2核4G有活动&#xff0c;阿里云百科分享阿里云轻量应用服务器入口&#xff1a; 目录 阿…

动态优先权算法

1.设计目的与要求 1.1设计目的 通过动态优先权算法的模拟加深对进程概念和进程调度过程的理解。 1.2设计要求 本实验要求学生独立地用C或C语言编写一个简单的进程管理程序&#xff0c;其主要部分是进程调度。调度算法可由学生自行选择&#xff0c;如基于动态优先级的调度算法…

FL Studio 21 for macOS-21.1.0.3267中文直装版功能介绍及系统配置要求

FL Studio 21简称FL水果软件,全称是&#xff1a;Fruity Loops Studio编曲&#xff0c;由于其Logo长的比较像一款水果因此&#xff0c;在大家更多的是喜欢称他为水果萝卜&#xff0c;FL studio21是目前最新的版本&#xff0c;这是一款可以让你的计算机就像是一个全功能的录音室&…

ArcGIS Maps SDK for JavaScript系列之三:在Vue3中使用ArcGIS API加载三维地球

目录 SceneView类的常用属性SceneView类的常用方法vue3中使用SceneView类创建三维地球项目准备引入ArcGIS API创建Vue组件在OnMounted中调用初始化函数initArcGisMap创建Camera对象Camera的常用属性Camera的常用方法 要在Vue 3中使用ArcGIS API for JavaScript加载和展示三维地…

8.利用matlab完成 符号微积分和极限 (matlab程序)

1.简述 一、符号微积分 微积分的数值计算方法只能求出以数值表示的近似解&#xff0c;而无法得到以函数形式表示的解析解。在 MATLAB 中&#xff0c;可以通过符号运算获得微积分的解析解。 1. 符号极限 MATLAB 中求函数极限的函数是 limit&#xff0c;可用来求函数在指定点的…