Wpf基础入门——XAML篇

发布时间 2023-05-29 21:21:59作者: Swbna

本篇文章学习于: 刘铁猛老师《深入浅出WPF》

什么是“项目模板”?

image.png

最简单的WPF程序

App.xaml
image.png
MainWindow.xamlimage.png
MainWindows.cs
image.png

浅析用户界面的树型结构

示例:
image.png

在XAML中为对象属性赋值

Attribute=Value形式

例如:【不能设置太复杂的值】
image.png
可以注意到在xaml文件中设置的value都是string类型,但在实际中是其他类型。
实质如下:
image.png
image.png

属性标签

示例:【可以设置太复杂的值,但是代码变长了】
image.png
建议:这边建议能使用Attribute=Value的形式写Attribute=Value,不能的话用这个;如果要这么写的值是默认值的话就不要写出来了。
image.png

标签扩展

StaticResource

image.png

Bind

image.png

事件处理器与代码后置

事件模型

image.png
例如
Button ——事件的拥有者
Click ——点击事件
void Button_Click(object s,RoutedEventArgs e){ MessageBox.Show("Hello WPF!"); } ——事件处理器
窗体 ——事件的响应者
事件订阅 —— Click="Button_Click"【XAML】 或者
this.Button.Click+=newRoutedEventHandler(Button_CLick)【CS】

导入程序集和引用其中的命名空间

示例:
(1)创建一个程序集【build】
image.png
image.png
image.png
(2)引用,然后添加命名空间:
xmlns:con="clr-namespace:MyWpfControlLibrary;assembly=MyWpfControlLibrary"
image.png
就可以使用这个命名空间下的类了
<con:SalaryCalcuator />

XAML的注释

<!--   -->

<!--
-->

x名称空间的由来和作用

x名称空间的声明:x是xaml的缩称,用来解析和分析xaml代码的。也叫xaml名称空间
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
x名称的使用:使用x名称空间下Class这个元素
例如:x:Class="MyWpfApp.MainWindow"

x名称空间里都有些什么?

image.png
image.png

x名称空间里的Attribute

x:Class

使用x名称空间下Class这个元素,使得xaml文件生成的类与MyWpfApp.MainWindow这个类合并
x:Class="MyWpfApp.MainWindow"

x:ClassModifier

类的访问级别【默认是public】 x:ClassModifier="public"
注意:xaml文件设置修改了,对应的cs文件也要修改类的访问级别

x:Name

(1)为xaml文件生成的这个实例创建引用变量
例如: <Button x:Name:"button1"/>,这样就可以在cs代码使用button1去访问这个Button实例
(2)看这个实例有没有Name属性,如果有Name这个属性的话,同时用变量的名字给Name属性赋值
例如:Messagebox.Show(button1.Name);

x:FieldModifier

类中成员变量(字段)的访问级别
例如: