【发布时间】:2008-12-10 09:09:11
【问题描述】:
在 Silverlight(我猜是 WPF)中,为什么属性 x:name x:fieldmodifier x:uid 是唯一带有前缀 x 的属性。
我知道 x 前缀用于引用 XML 命名空间,但还有许多其他属性不使用前缀,例如宽度。识别控件是如此常见的任务,需要前缀似乎很奇怪?
【问题讨论】:
标签: wpf xml silverlight
在 Silverlight(我猜是 WPF)中,为什么属性 x:name x:fieldmodifier x:uid 是唯一带有前缀 x 的属性。
我知道 x 前缀用于引用 XML 命名空间,但还有许多其他属性不使用前缀,例如宽度。识别控件是如此常见的任务,需要前缀似乎很奇怪?
【问题讨论】:
标签: wpf xml silverlight
我认为这里的重点是xaml和wpf/SL的区别。
Xaml 实际上是一种对象初始化语言,完全独立于 wpf / SL。例如,您还可以使用 xaml 在 WF 中定义工作流。我认为这就是将“纯”Xaml 命名空间与表示命名空间区分开来的原因。
【讨论】:
更新:我很抱歉,因为我不太了解这个问题(请参阅评论)。
在 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 和命名空间。
【讨论】:
其中之一:
【讨论】: