- 首先简单介绍一下WPF,WPF(Windows Presentation Foundation)是微软推出的基于Windows 的用户界面框架,属于.NET Framework 3.0的一部分。它提供了统一的编程模型、语言和框架,真正做到了分离界面设计人员与开发人员的工作;同时它提供了全新的多媒体交互用户图形界面。
- Wpf项目创建2.1 打开Vs/新建/项目/勾选wpf模板2.2 如图
3 .wpf控件分类3.1常用的控件有6大类布局控件:是可以容纳多个控件或者嵌套其他布局的控件,用于在UI上组织和 排列控件。Grid、StackPanel、DockPanel等控件都属此类,它们拥有共同的父 类为Panel。 内容控件:只能容纳一个控件或者布局控件作为他的内容。Window、Button等 控件属于此类,因为只能容纳一个控件作为其内容,所以经常借助布局控件来 规划其内容。它们的共同父类是ContentControl。 带标题内容控件:相当于一个内容控件,但是可以加一个标题(Header),标 题部分亦可容纳一个控件或者布局,GroupBox、TabItem等是这类控件的典型 代表。它们的共同父类是HeaderedContentControl。 条目控件:可以显示一列数据,一般情况下这列数据的类型是相同的。此类控 件包括ListBox、ComboBox等。它们额共同基类是ItemsControl。此类控件在 显示集合类型数据方面功能比较强大 带标题条目控件:相当于一个条目控件加上一个标题显示区。TreeViewItem、 MenuItem都属于此类控件。这类控件往往用于显示层级关系数据,结点显示在 其Header区域,子级结点则显示在其条目控件区域。此类控件的共同基类是 HeaderdeItemsControl。 特殊内容控件:比如TextBox容纳的是字符串、TextBlock可以容纳可自由控制格 式的文本、Image容纳图片类型数据等。这类控件相对比较独立,但也比较常 用。
4. Wpf控件布局xaml常用布局元素 4.1 Grid:网格。可以自定义行和列并通过行列的数量、行高列宽来调整控件的布局。近似Html中的table。 4.2 DockPanel:泊靠式面板。内部元素可以选择泊靠的方向(上下左右),类似于Winform中设置控件的Dock属性。 4.3 StackPanel:栈式面板。可将包含的元素在水平或垂直方向排成一条线,当移除一个元素后,后面的元素会自动向前填充空缺。(菜单 栏) 4.4WrapPanel:自动折行面板(环绕面板)。内部元素在排满一行后能够自动折行,类似于Html中的流式布局。 4.5 UniformGrid:均分布局(横向的网格分割、纵向的网格分割分别是均等的分割的布局类型,各个单元格的大小完全相同,宽与高分别 相同) 4.6 Canvas:画布。内部元素可以使用以像素为单位的绝对坐标进行定位,类似于Windows Form 的布局方式。
5. WPF基控件介绍如图:
6 . XAML属性6.1定义: 属性是对XAML元素特征进行描述的方法;属性不允许在XAML中重复设置多次;允许 在托管代码中改变元素的属性值 6.2XAML的属性有四种设计方式:使用特性语法(属性语法)、使用属性元素语法、使用内容元素语法、使用集合语法6.3、使用特性语法(属性语法)的定义:特性语法对设置的对象属性命名,后跟赋值 运算符 (=)代码: 或者 6.4使用属性元素语法的定义:属性元素开始标记的语法为 <TypeName.PropertyName>。 通常,该标记的内容是类型 的对象元素,属性会将该元素作为其值。 指定内容之后,必须用结束标记结束属性元素。 结束标记的语法为 </TypeName.PropertyName>代码: <object.property> </object.property> </object6.5使用内容元素语法的定义: 属性标记之间可以插入大量的文本内容 代码: 某些元素的属性支持内容元素语法,允许忽略元素的名称 实力对象会根据XAML元素中的第一个标记值来设置属性 对于大量的格式化文本,使用内容元素语法更加灵活 属性标记之间可以插入大量的文本内容 6.6使用集合语法的定义:子对象元素的集合是设置为集合属性的值代码: 6.7属性又可以分为基本属性、附加属性、依赖属性附加属性定义:附加属性是由支持附加属性的父元素产生作用,支持附加属性的元素会继承所在的 父元素的属性 代码: