ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

WPF的介绍

2021-11-28 20:03:08  阅读:205  来源: 互联网

标签:文件 xaml 介绍 cs WPF App 页面


WPF(Windows Presentation Foundation)是(微软推出的)基于Windows的用户界面框架,属于.NET Framework 3.0的一部分。WPF提供了统一的编程模型,语言和框架,做到了分离界面设计人员与开发人员的工作;WPF提供了全新的多媒体交互用户图形界面。

WPF中文译名为“Windows呈现基础”,原来的代号为“Avalon”。从.NET Framework 3.0开始引入。(所以.NET Framework 3.0以下版本没有WPF,.NET Framework 3.0及其之后的版本才支持WPF)

WPF最大的特点是页面的动态化,WPF有矢量图的超强支持;兼容2D绘图,3D控件及事件。

WPF使用对象描述语言XAML。(XAML语言和HTML语言都是由XML语言延申而来的。)

WPF(Windows Presentation Foundation)由两个部分组成:引擎和编程框架。

WPF应用程序创建的项目,会自动生成这样一个目录文件

默认情况下,WPF的应用程序包含四部分内容。

Properties里面是项目的一些配置资源,Resources是系统里面的资源。

引用,可以通过引用的方式使用外部的插件。

App.config里面是一些配置文件,类似于MVC里面的Web.config。

现在使用的是.NET 4.5开发WPF。

App.xaml文件是整个程序的入口文件,可以指定WPF项目的入口页面是哪一个页面,在“Application”里面通过“StartupUri”这个属性来指定WPF要启动的应用窗体,启动页面默认为“MainWindow.xaml”页面。如下图可以看到整个页面的顶级元素是“Application”。

如下图,WPF在默认情况下带有三个命名空间,在WPF里面前面两个默认命名空间无论在哪里都能用到。第一个通过链接的方式将命名空间加进来,是矢量的命名空间;第二个命名空间带有x的前缀,是xaml的命名空间;第三个命名空间带有local的前缀,local代表着应用程序,加载的是本地的命名空间,不需要通过链接的方式引入,而是利用属性“clr-namespace”引入,但是本地的命名空间一般是用不到的,所以可以去掉。一个完整的XAML页面必须带有两个命名空间(第一和第二个)。

“Application”里面还有一个“Application.Resources”,Resources的意思是资源,那么“Application.Resources”的意思就是应用程序的资源,WPF的样式、模板、动画等资源就是通过Application.Resources引入。

App.xaml文件,下面跟着一个类文件App.xaml.cs文件。这是xaml页面的一个特点,xaml页面后面一定跟着一个xaml.cs类文件,一个页面对应一个xaml.cs类文件。

xaml页面与Html页面不同的是,xaml页面就只是页面设计,不涉及任何的业务逻辑处理。xaml页面也不能通过JS、Jquery来写逻辑代码,而是把逻辑代码写在对应的的xaml.cs类文件里面。

所以App.xaml文件下面的App.xaml.cs类文件里面是App.xaml文件的后台代码,如上图可以看到,App.xaml.cs类文件继承于Application应用程序,处理整个WPF项目的相关应用程序。

MainWindow.xaml是项目默认自带的窗口,WPF的设计界面。MainWindow.xaml页面下面同样跟着一个MainWindow.xaml.cs类文件。MainWindow.xaml.cs是后台类文件,如下图可以看到页面的顶级元素是“Window”,所以MainWindow.xaml.cs类文件继承于Windows。

里面的“Grid”布局相当于Html的“body”标签。

 

标签:文件,xaml,介绍,cs,WPF,App,页面
来源: https://blog.csdn.net/m0_60534193/article/details/121596353

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有