在Silverlight / XAML中,您有以下命名空间:
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
所以元素具有这样的命名空间属性:
<TextBlock x:Name="theMessage" Margin="10">Testing...</TextBlock>
什么时候对我有益?我是否会在某个时候创建另一个名称空间,例如:
xmlns:edward="http://www.tanguay.info/web"
所以我可以把我自己的名字属性标签,例如:
<TextBlock x:Name="theMessage" edward:Name="secondName" Margin="10">Testing...</TextBlock>
然后以某种方式处理两个名称标签等?
答案 0 :(得分:1)
XAML是一种基于XML的标记语言,因此您可以利用命名空间。这种方法的主要目标是以较小的单位组织您的工作,并保持它们之间的歧义。这与在.NET(或其他编程语言)中使用普通命名空间操作的原理相同。在XAML中,您可以使用
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
用于解决基本控件的命名空间(请记住它只是一个字符串,而不是实际指向网站的地址)。 除此之外,通常会找到用于连接到包含业务逻辑或其他XAML对象的其他程序集(第三方或您拥有)的其他名称空间的引用。
xmlns:demo="clr-namespace:MyNamespace;assembly=MyNamespace.Lib"
并且在你的XAML中有这样的东西
<Grid>
<demo:MyCustomControl />
</Grid>
MyCustomControl是在MyNamespace.Lib程序集中定义的控件。
编辑:记得,如果你想在命名空间引用中保留类似XAML的语法,你可以用uri的形式为它们创建别名。查看this示例。