2011-01-27 83 views
0

我正在学习WPF,发现它的工作方式是完全不同的。我有以下XAML标记两个问题:关于WPF的一个基本问题

<Button x:name="test" BackGround="{StaticResource MyColor}" /> 

1)为什么X:叫什么名字?既然name是一个属性,那么为什么x应该是它的前缀。 x:name有什么特别的含义吗?

2)什么是StaticResource,StaticResource存储在哪里?

请详细解释。谢谢。

回答

1

关于x:姓名您应该阅读this thread

XAML分析器转换指令:

{StaticResource MyColor} 

成C#代码:

Resource["MyColor"] 

静态资源查找行为

  1. 查找过程检查中所要求的关键资源 dicti由 设置属性定义的元素。
  2. 查找过程然后向上遍历逻辑树,到父元素 元素及其资源字典。 这一直持续到达到根元素 。
  3. 接下来,检查应用程序资源。应用程序资源是 资源中的那些资源 字典,由您的WPF 应用程序的 应用程序对象定义。

Source

简单,如果你在App.xaml中定义的东西,父母或电流控制的资源,你可以使用静态资源来查找那些拿到钥匙下的值。