属性元素

标签的内容是指夹在起始标签和结束标签之间的一些子标签,每个子级标签都是父级标签的一个属性,称为父级标签的一个元素。

属性元素就是指某个元素是这个标签的一个属性,即以元素的形式表达一个实例的属性。

<ClassName>

  <ClassName.PropertyName>

      <!--以对象形式为属性赋值-->

  </ClassName.PropertyName>

</ClassName>

适用于属性是复杂对象。

简化XAML技巧:

1.能使用Attribute=Value的形式赋值就不使用属性元素

2.充分利用默认值

3.利用XAML的简写方式

 Attribute和Property的区别:

Attribute是语言层面的东西,是给编译器看的;Property是面向对象层面的东西,是给编程逻辑用的。
一个XAML标签的Attribute里大部分都对应着对象的Property。

x:Class=“目标类名”   以Attribute的形式告诉编译器将XAML标签的编译结果和后台代码哪个C#编译的类合并。

x:ClassModifier     以Attribute的形式告诉编译器将XAML标签的编译后生成的类具有怎样的访问控制级别,默认是internal(即private)。

x:Name      1.标签生成的对应实例的引用变量名;2. 等同于XAML标签所对应对象的Name属性值。(FrameworkElement类都具有Name属性,
此时使用Name和x:Name效果是相同的。如<Button x:Name="button1"/>和<Button Name="button1"/>,XAML编译器都是声明名为button1
的Button类型变量并引用一个Button类型实例,此实例的Name属性也是button1。对于那些没有Name属性的元素,为了在XAML声明时也创建引用变
量以便在C#中访问,我们就只能使用x:Name。因此我们可以全部使用x:Name以增强代码的可读性。

x:FieldModifier     以Attribute的形式改变XAML中变量的访问控制级别,默认是internal。如<TextBox x:Name="tx1" x:FieldModifier="public">

x:Key      为资源贴上用于检索的索引。WPF中几乎每个元素都有自己的Resources属性,这个属性是key-value的集合。Style和Template等放在资源中
,为它添加x:Key。

原文地址:https://www.cnblogs.com/cnland/p/2795798.html