mc:Ignorable 特性

指定 XAML 处理器可以忽略标记文件中的哪些 XML 命名空间前缀。 mc:Ignorable 特性支持自定义命名空间映射和 XAML 版本控制的标记兼容。

XAML 特性用法(单一前缀)

<object
  xmlns:ignorablePrefix="ignorableUri"
  xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
  mc:Ignorable="ignorablePrefix"...>
    <ignorablePrefix1:ThisElementCanBeIgnored/>
</object>

XAML 特性用法(两个前缀)

<object
  xmlns:ignorablePrefix1="ignorableUri"
  xmlns:ignorablePrefix2="ignorableUri2"
  xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
  mc:Ignorable="ignorablePrefix1 ignorablePrefix2"...>
    <ignorablePrefix1:ThisElementCanBeIgnored/>
</object>

XAML 值

说明
ignorablePrefix、ignorablePrefix1 等 根据 XML 1.0 规范,任何有效前缀字符串。
ignorableUri 根据 XML 1.0 规范,用于指定命名空间的任何有效 URI。
ThisElementCanBeIgnored Extensible Application Markup Language (XAML) 处理器实现(如果无法解析基础类型)可以忽略的元素。

注解

mc XML 命名空间前缀是映射 XAML 兼容性命名空间 http://schemas.openxmlformats.org/markup-compatibility/2006 时推荐使用的前缀约定。

XAML 处理器处理元素名称的前缀部分标识为 mc:Ignorable 的元素或特性时不会引发错误。 如果该特性无法解析为基础类型或编程构造,则忽略该元素。 但是请注意,被忽略的元素可能仍会因其他元素要求而生成其他解析错误,这些错误是未处理该元素所导致的结果。 例如,特定元素内容模型可能只需要一个子元素,但如果指定的子元素位于 mc:Ignorable 前缀,且指定的子元素无法解析为类型,则 XAML 处理器可能会引发错误。

mc:Ignorable 仅适用于将命名空间映射到标识符字符串。 mc:Ignorable 不适用于将名称空间映射到程序集,它指定 CLR 命名空间和程序集(或将当前可执行文件默认为程序集)。

如果实现的是 XAML 处理器,则对于标识为 mc:Ignorable 的前缀所限定的任何元素或特性,处理器实现不得引发关于类型解析的解析错误或处理错误。 但处理器实现仍然可能引发异常,这些异常是元素加载失败或处理失败的次要结果,例如上述的单一子元素示例。

默认情况下,XAML 处理器将忽略被忽略元素中的内容。 但你可以指定一个附加特性 mc:ProcessContent 特性,以要求下一个可用父元素继续处理被忽略元素中的内容。

可以在特性中指定多个前缀,并使用一个或多个空格字符作为分隔符,例如:mc:Ignorable="ignore1 ignore2"

http://schemas.openxmlformats.org/markup-compatibility/2006 命名空间定义 SDK 的此区域中未记录的其他元素和特性。 有关详细信息,请参阅 XML 标记兼容规范

另请参阅