WPF学习里程(二) XAML基础
1.什么是XAML?
官方语言:
XAML是eXtensible Application Markup Language的英文缩写,相应的中文名称为可扩展应用程序标记语言,它是微软公司为构建应用程序用户界面而创建的一种新的描述性语言。
人话:
XAML是一种界面开发语言,跟英语、中文一样,不过人家是用来开发界面的啦~
具体长什么样呢?如下图
2.为什么需要XAML?
随着大众审美的提升,对软件界面要求也严格了很多,这就避免不了程序员和设计师的合作。
合作一般是这样开展:
1.需求分析结束后,程序猿按照需求分析对照需求设计一个出版界面(很low的那种),然后精力主要放在功能开发上。
2.与此同时,设计师对照需求,考虑用户体验,使用专门的设计工具(PS啦),设计出高大上的界面。
3.最后,猿们按照设计师的要求,使用编程语言实现软件的UI。
但是,你懂的,理想跟现实往往有所差距,这样的合作经常会出现“沟通问题”,谁说需求就不会变的。。需求一变,嘿嘿。。
不是设计师跟不上逻辑变更,就是程序员未能完整按照设计员的要求实现界面,这无关对错,
只是"合作的成本就不可能为零"--猛哥经典语录。
所以为了减少合作成本,有一种解决方案,就是将上述的串行,改为并行,也就是说,无需等待上一个人的完成,而是设计师和猿
同步开发。所以就创造了这牛批的界面开发语言---XML.
原来的创作思路是网络程序开发,可以使用HTML、CSS、JS直接生成UI,程序员则在此基础上进行开发,所以为了把这种模
式从网络端移植到桌面应用程序,XAML诞生啦(是不是能理解为什么XAML很像xml和Html了~)。
3.XAML有哪些基础知识?
然后我们了解一下XAML基础
XAML文档中的每个元素都映射为.NET类的一个实例。元素名称也完全对应于类名,如Button,即为Button对象,且支持嵌套。
像上图的Grid(网格)里面就可以嵌套其他元素。
我们一起来解析上面的文档截图。包含有<Window>元素和<Grid>元素,这两个都是顶级元素,可以放置所有控件。
所有XAML文档都只能有一个顶级元素。上述文档的意思就是创建一个标题为Window1的窗口,中间放置一个Grid,然后Grid中嵌套
一个Button。
接下来的就有小伙伴好奇了,xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"这么长的一串是啥?
这其实是XAML的名称空间,xmlns专门用来声明名称空间,包含了所有WPF类,包括用来构建用户界面的控件。
可以大致理解成URI指明网站的路径亦或者文件夹路径。在使用visual studio创建WPF项目时会自动创建几条默认引用的名称空间。