【问题标题】:What does the runtime do with XAML namespaces?运行时对 XAML 命名空间有什么作用?
【发布时间】:2009-08-07 18:03:50
【问题描述】:

在每个 XAML 文档中,都有一个或多个命名空间声明。即:

<Window x:Class="WindowsApplication1.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Window1 Height="300">

声明采用 URL 的形式,让我问:运行时是否真的在应用程序加载时从这些 URL 中检索信息?如果没有互联网连接会怎样?

【问题讨论】:

    标签: wpf xml xaml namespaces


    【解决方案1】:

    这只是一个标准的 xml 命名空间,与 XAML 没有什么特别的关系。它实际上只是这个特定 xml 的唯一标识符;没有从这个 url 检索到任何数据,事实上,它甚至不需要是一个 url。

    请参阅 this 上一篇文章,了解 xml 中的命名空间是什么,以及为什么实际的命名空间文本本身没有实际意义。

    【讨论】:

      【解决方案2】:

      没有。运行时不会取消引用 URI,它们只是用作可读的全局唯一标识符。他们完全使用 http 协议的事实只是一种约定。它们遵循 W3C 的 XML 命名空间标准。

      URI 是指使用 WPF 程序集中的 XmlnsDefinitionAttribute 定义定义的 URI。 XAML 阅读器使用这些属性将这些程序集中的 CLR 命名空间组合到一个组合的 XML 命名空间中。

      【讨论】:

        猜你喜欢
        • 2016-08-05
        • 2017-08-05
        • 2012-10-24
        • 2010-09-12
        • 1970-01-01
        • 1970-01-01
        • 2014-11-07
        • 1970-01-01
        相关资源
        最近更新 更多