WPF编程宝典 - 03布局
WPF布局
在WPF中非常抵制基于坐标的布局,而是注重创造更灵活的布局,使布局能够适应内容的变化、不同的语言以及各种窗口尺寸。
布局原则
不应显式设定元素(如控件)的尺寸。元素应当可以改变尺寸以适合它们的内容。可通过设置最大和最小尺寸来限制可以接受的控件尺寸范围
不应使用屏幕坐标指定元素的位置。元素应当由它们的容器根据它们的尺寸/顺序以及(可选的)其他特定于具体布局容器的信息进行排列。如果需要在元素之间添加空白空间。可使用Margin
布局容器的子元素“共享”可用的空间。如果空间允许,布局容器会根据每个元素的内容尽可能为元素设置更合理的尺寸。它们还会向一个或多个元素分配多余的空间
可嵌套的布局容器。布局容器之间可以进行嵌套组合
布局过程
WPF 布局包括两个阶段:测量(measure)阶段和排列(arrange)阶段。在测量阶段,容器遍历所有子元素,并询问子元素它们所期望的尺寸。在排列阶段,容器在合适的位置放置子元素。
布局容器
所有WPF布局容器都是派生自System.Windows.Controls.Panel抽象类的面板。
Panel类的层次结构
Panel类还包 ...
WPF编程宝典 - 02XAML
XAML
XAML对于WPF不是必需的,理解这一点很重要。Visual Studio当然可以使用Windows窗体方法,通过语句代码来构造WPF窗口。但如果这样的话,窗口将被限制在Visual Studio开发环境之内,只能由编程人员使用。
XAML名称空间
12xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:"x=http://schemas.microsoft.com/winfx/2006/xaml"
xmlns特性是XML中的一个特殊特性,他专门用来声明名称空间。这段标记声明了两个名称空间,在创建的所有WPF XAML
文档中都会使用这两个名称控件
http://schemas.microsoft.com/winfx/2006/xaml/presentation是WPF核心名称空间。它包含了所有WPF类,包括用来构建用户界面的控件。在该例中,该名称空间的声明没有使用名称空间前缀,所以它成为整个文档的默认名称空间。换句话说,除非另行指明,每个 ...
WPF编程宝典 - 01概述
WPF概述
WPF(Windows Presentation Foundation)是用于 Windows 的现代图形显示系统。与之前出现的其他技术相比,WPF发生了根本性变化,引入了“内置硬件加速”和“分辨率无关”等创新功能;本章将介绍这两项功能。
WPF应用特点
硬件加速 。通过DirectX执行所有WPF绘图操作,以便充分利用现代显卡的最新功能
分辨率无关。WPF能够根据系统DPI设置,很长灵活地方大和缩小显示的内容,以使其适合所用的显示器和显示选择
控件无固定外观。可自由定制外观
声明式用户界面。通过XAML不必编写代码即可创建窗口
基于对象的绘图。即使准备在更低级的可视化层(而非高级元素层)上工作,也不需要使用绘图和像素进行工作,而是创建图形对象并让 WPF 尽可能最优化地显示出来。
WPF体系结构
WPF 使用多层体系结构。在顶层,应用程序与完全由托管C#代码编写的一组高层服务进行交瓦。至于将.NET 对象转换为Direct3D纹理和三角形的实际工作,是在后台由一个名为milcore.dll 的低级非托管组件完成的。milcore.dll 是使用非托管代码实现的 ...
hexo部署记录
Hexo部署记录
当前部署方式均来源于网络,当前记录只作为记录参考,自行食用
自定义域名
访问Vercel,点击Sign up通过Github注册账号
注册完成后,点击New Project,选择Import Git Repository
在Import Git Repository中,选择hexo仓库,点击Import
在Configure Project页,填写相关信息点击Deploy等待完成配置
在控制面板点击项目,即可查看网站
项目配置完成后,在Settings中,找到Domains,点击Add a domain
输入自定义域名,点击Add等待完成配置
根据提示,在DNS中添加域名解析解析,等待完成配置
自定义OSS存储图片
阿里云购买对象存储服务,创建存储空间
进入对象存储OSS控制台,点击Bucket列表
创建Bucket,填写基本信息(其中读写权限改为公共读)
点击头像选择访问控制,进入RAM访问控制
点击用户,输入基本信息(勾选OpenAPI调用访问 启用AccessKey ID和AccessKey Secret)
用户首页点击添加权限,选择添加权限
点击 ...
Butterfly主题标签外挂语法
標籤外掛(Tag Plugins)
以下内容节选自官网教程,详情可见 Butterfly
標籤外掛是Hexo獨有的功能,並不是標準的Markdown格式。
以下的寫法,只適用於Butterfly主題,用在其它主題上不會有效果,甚至可能會報錯。使用前請留意
標籤外掛雖然能為主題帶來一些額外的功能和UI方面的強化,但是,標籤外掛也有明顯的限制,使用時請留意。
Note (Bootstrap Callout)
通用設置用法 1用法 2(自定義 icon)移植於next主題,並進行修改。
修改 主題配置文件
123456789101112note: # Note tag style values: # - simple bs-callout old alert style. Default. # - modern bs-callout new (v2-v3) alert style. # - flat flat callout style with background, like on Mozilla or StackOverflow. # - ...