运行时对XAML命名空间做了什么?

时间:2009-08-07 18:03:51

标签: wpf xml xaml namespaces

在每个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中检索信息?如果没有互联网连接会怎样?

2 个答案:

答案 0 :(得分:2)

这只是一个standqard xml命名空间,与XAML完全无关。它实际上只是这个特定xml的唯一标识符;没有从这个网址中检索数据,事实上,它甚至不需要是一个网址。

请参阅this上一篇文章,了解xml中命名空间的含义,以及为什么实际的命名空间文本本身并不重要。

答案 1 :(得分:2)

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

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