WPF项目构造
properties分支:里面的主要内容是程序用到的资源(如图,图片,静态的字符串等)和配置信息.
引用分支:标记了当前项目引用了哪些其他项目.
App.xaml:程序的主体.声明了程序的进程会是谁,同时指定了主窗体是谁.
MainWindow.xaml:程序的主窗体.
XAML代码含义
XAML是一种由XML派生而来的语言,所以很多XML中的概念在XAML是通用的。比如,使用标签声明一个元素(每个元素对应内存中的一个对象)时,需要使用起始标签<Tag>和终止标签</Tag>,夹在起始标签和终止标签中的XAML代码表示是隶属于这个标签的内容。如果没有什么内容隶属于某个标签,则这个标签称为空标签,可以写为<Tag/>.
为了表示同类标签中的某个标签与众不同,可以给它的特征(Attribute)赋值。为特征赋值的语法如下:
非空标签:<TagAttribute1=Value1 Attribute2=Value2>Content</Tag>
空标签:<TagAttribute1=Value1 Attribute2=Value2/>
在这里,有必要把Attribute和Property这两个词仔细地辨别一下.
这两个词的混淆由来已久。混淆的主要原因就是大多数中文译本里既把Attribute译为“属性”,也把Property译为“属性”。其实,这两个词所表达的不是一个层面上的东西.
XAML是一种“声明”式语言,当你见到一个标签,就意味着声明了一个对象,对象之间的层级关系要么是并列、要么是包含,全都体现在标签的关系上。
其中Title、Height、Width一看就是与Window的属性相对应的。
几个xmlns是在声明命名空间。
最上面一行是在使用名为Class的Attribute,这个Attribute来自于x:前缀所对应的命名空间。
XAML语言是从XML语言派生出来的。XML语言有一个功能就是可以在XML文档的标签上使用xmlns特征来定义名称空间(Namespace),xmlns也就是XML-Namespace的缩写了。定义名称空间的好处就是,当来源不同的类重名时,可以使用名称空间加以区分。
xmlns特征的语法格式如下:
xmlns[:可选的映射前缀]="命名空间"