什么设计网站好,wordpress rar附件,企业网站建设选择兴田德润,网站小图标WPF应用程序的组成及Window类介绍 WPF应用程序的组成及Window类介绍前言正文1、WPF介绍1.1 什么是WPF1.2 WPF的特点1.3 WPF的控件分类 2、XAML介绍2.1 XAML的定义2.2 XAML的特点2.3 XAML的命名空间 3、WPF应用程序组成3.1 App.config3.2 App.xaml3.3 App.xaml.cs3.4 MainWindow… WPF应用程序的组成及Window类介绍 WPF应用程序的组成及Window类介绍前言正文1、WPF介绍1.1 什么是WPF1.2 WPF的特点1.3 WPF的控件分类 2、XAML介绍2.1 XAML的定义2.2 XAML的特点2.3 XAML的命名空间 3、WPF应用程序组成3.1 App.config3.2 App.xaml3.3 App.xaml.cs3.4 MainWindow.xaml3.5 MainWindow.xaml.cs 4、Window类介绍4.1 标题 Title4.2 大小 Height、Width4.3 窗口是否具有任务栏按钮 ShowInTaskbar4.4 窗口首次出现位置 WindowStartupLocation4.5 窗口显示状态 WindowState4.6 是否设置为最顶层 Topmost4.7 设置窗体图标 Icon4.8 窗口的加载事件 Loaded WPF应用程序的组成及Window类介绍
前言
WPFWindows Presentation Foundation作为微软推出的新一代图形呈现系统为Windows 应用程序的开发带来了革命性的变化。它以其强大的界面设计能力和灵活的编程模型成为了现代 Windows 桌面应用开发的首选框架。而 XAMLExtensible Application Markup Language作为 WPF 的核心标记语言使得界面的定义与业务逻辑的分离成为可能极大地提高了开发效率和代码的可维护性。
本文将首先简要介绍 WPF 的基本概念及其优势带领读者走进这个强大的图形呈现世界。接着我们将深入探讨 XAML 的语法和用法了解它是如何与 WPF 相互协作共同构建出丰富多彩的用户界面。最后我们将详细解析 WPF 应用程序的组成结构特别是 Window 类的功能与应用帮助读者更好地理解并掌握 WPF 应用程序的开发流程和关键技术。
通过阅读本文相信会对 WPF 和 XAML 有更深入的了解并能够在实际开发中灵活运用它们创造出令人满意的 Windows 桌面应用程序。
正文
1、WPF介绍
1.1 什么是WPF
WPF Windows Presentation Foundation)Windows 呈现基础是基于Windows 的用户界面框架.net framework3.0及以上版本的一部分统一的编程模型、语言和框架做到了界面设计与后端开发分离支持多媒体、制作动画。
1.2 WPF的特点
必须运行在.net framework 3.0及以上版本 呈现效果不受分辨率的影响会自动识别显示器的分辨率而进行缩放支持DirectX 3D技术3D界面可以做出更炫酷的界面提供了.net UI框架集成了矢量图形、流动文字支持、3D视觉效果和控件模型框架UI 与 业务逻辑彻底分离UIXAML语言进行描述WPF引擎解释为对应的.NET对象用户体验部署方式的升级运行环境XP、server2003及以后的Windows操作系统版本任何一种.net语言C# 、VB.net 都可以进行开发WPF 是数据来驱动 UI 的数据是WPF的核心处于主动地位UI 从属于数据并表达数据 WinForm 是数据驱动
1.3 WPF的控件分类
布局控件 Panel内容控件 ContentControl只能容纳一个控件或布局控件带标题的内容控件 内容控件可以设置标题Header 父类HeaderedContentControl条目控件 ItemControl可以显示一列数据数据类型一般相同带标题的条目控件条目控件可以设置标题Header 父类HeaderedItemControl特殊内容控件常用控件 TextBox、PasswordBox、TextBlock、Image等第三方WPF控件
2、XAML介绍
2.1 XAML的定义
为构建应用程序用户界面而创建的一种新的“可扩展的应用程序标记语言”提供了一种便于扩展和定位的语法来定义和程序业务扩及分离的用户界面
2.2 XAML的特点
定义应用程序的界面元素显示声明WPF资源样式、模板、动画等可扩展性UI控件
2.3 XAML的命名空间
XAML 与 .NET 程序语言一样也是通过命名空间有效组织 XAML 内部的相关元素类 如果应用时不带前缀就来自于默认的命名空间否则就来自于带前缀的命名空间
命名空间的引用语法xmlns:[前缀名]命名空间描述 自定义类或程序集映射语法xmlns:[必选前缀]clr-namespace:[命名空间];assembly[程序集名称]
注意一个 XAML 文件至少要有两个命名空间
默认命名空间带x前缀的命名空间
3、WPF应用程序组成 3.1 App.config
?xml version1.0 encodingutf-8 ?
configurationstartup supportedRuntime versionv4.0 sku.NETFramework,Versionv4.7.2 //startup
/configurationApp.config 配置文件包含 .NETFramework 的版本信息等可以设置与应用程序相关的信息比如与数据库的连接字符串的设置 connectionStrings与系统相关的信息 appSettings 等 connectionStrings/connectionStringsappSettings/appSettings3.2 App.xaml
Application x:ClassWpfTest.Appxmlnshttp://schemas.microsoft.com/winfx/2006/xaml/presentationxmlns:xhttp://schemas.microsoft.com/winfx/2006/xamlxmlns:localclr-namespace:WpfTestStartupUriMainWindow.xamlApplication.Resources/Application.Resources
/ApplicationApp.xaml 设置应用程序起始文件系统级的资源 x:ClassWpfTest.App 指定 XAML 文件所对应的后代代码文件的类xmlnshttp://schemas.microsoft.com/winfx/2006/xaml/presentation 默认命名空间xmlns:xhttp://schemas.microsoft.com/winfx/2006/xaml 和编译相关的 CLR 命名空间StartupUriMainWindow.xaml指定应用程序的起始文件Application.Resources定义整个WPF应用程序的相关资源
例如在项目目录下创建 Users 文件夹并创建窗口文件 UserWindow.xaml通过修改 App.xaml 文件设置应用程序起始文件 创建 Users 文件夹 创建 UserWindow.xaml 窗口 改写 App.xaml 文件的 StartupUri Application x:ClassWpfTest.Appxmlnshttp://schemas.microsoft.com/winfx/2006/xaml/presentationxmlns:xhttp://schemas.microsoft.com/winfx/2006/xamlxmlns:localclr-namespace:WpfTestStartupUriUsers/UserWindow.xamlApplication.Resources/Application.Resources
/Application注意是这种写法 Users/UserWindow.xaml 而不是 Users.UserWindow.xaml 运行应用程序
3.3 App.xaml.cs
App.xaml.cs App.xaml 文件的后台类文件
3.4 MainWindow.xaml
MainWindow.xaml 窗口文件WPF应用程序界面与XAML设计文件
3.5 MainWindow.xaml.cs
MainWindow.xaml.cs MainWindow.xaml 文件的后台代码文件
4、Window类介绍
Window 类的父类System.Windows
Window 是 ContentControl 内容控件只能承载一个 Content创建时默认的 Content 是 Grid 网格 行和列 布局控件
4.1 标题 Title
TitleMainWindow4.2 大小 Height、Width
Height450 Width8004.3 窗口是否具有任务栏按钮 ShowInTaskbar
ShowInTaskbarTrueTrue显示任务栏按钮False不显示任务栏按钮
4.4 窗口首次出现位置 WindowStartupLocation
WindowStartupLocationCenterScreenCenterOwnerCenterScreen屏幕中间Manual默认位置
4.5 窗口显示状态 WindowState
WindowStateMaximizedMaximized最大化Minimized最小化Normal原有尺寸
4.6 是否设置为最顶层 Topmost TopmostTrueTrue窗口设置为最顶层False窗口不设置为最顶层
4.7 设置窗体图标 Icon
Iconimgs/icon.ico必须是 ico 文件
4.8 窗口的加载事件 Loaded
LoadedWindow_Loaded会在 cs 文件中自动生成 Window_Loaded 方法 private void Window_Loaded(object sender, RoutedEventArgs e){}还有其他的响应事件如Closing、MouseBoubleClick、MouseLeftButtonClick、MouseLeftButtonUp、MouseRightButtonClick、MouseLeftButtonUp 等