在Silverlight中(我猜是WPF)为什么属性x:name x:fieldmodifier x:uid只有前缀为x的那些。
我理解x前缀用于引用XML命名空间,但是有许多其他属性不使用宽度等前缀。识别控件是一项常见的任务,需要一个前缀似乎很奇怪?
答案 0 :(得分:3)
我认为这里的关键点是xaml和wpf / SL之间的区别。
Xaml实际上是一种对象初始化语言,完全独立于wpf / SL。例如,您还可以使用xaml在WF中定义工作流。我认为这就是让“纯”Xaml命名空间与表示命名空间区别开来的原因。
答案 1 :(得分:2)
更新:对不起,因为我不太清楚这个问题(见评论)。
在silverlight和wpf中,.net名称空间与xml名称空间相关联。 更常见的.net名称空间与xml名称空间相关联 “http://schemas.microsoft.com/winfx/2006/xaml/presentation”。 然后在xaml根元素中有这个命名空间定义:
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
这意味着与“http://schemas.microsoft.com/winfx/2006/xaml/presentation”关联的.net名称空间不需要前缀。
Here是对xaml和命名空间的一个很好的解释。
答案 2 :(得分:-3)
其中一个: