【问题标题】:What are some concrete examples of using namespaces Silverlight/XAML?使用命名空间 Silverlight/XAML 的一些具体示例是什么?
【发布时间】:2009-01-25 12:59:00
【问题描述】:

在 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>

然后以某种方式处理两个名称标签等?

【问题讨论】:

    标签: silverlight xaml namespaces


    【解决方案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 示例。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-03-23
      相关资源
      最近更新 更多