INameScope 接口

定义

针对如何在特定的 XAML 名称范围内访问元素的名称,以及如何强制该 XAML 名称范围内名称的唯一性,定义一个协定。

public interface class INameScope
public interface INameScope
type INameScope = interface
Public Interface INameScope
派生

注解

此接口由具有子元素的类实现,这些子元素旨在通过模板或延迟隐喻重复使用。 模板、工厂和类似构造必须具有独立于main对象图和根 XAML 的唯一 XAML 名称范围。 此处的原则是,当从这些子元素创建的对象被引入到应用程序的对象图中时,不应发生名称冲突,以便依赖于名称标识符的 DOM 操作和 XAML 引用技术可以依赖于每个 XAML 名称范围中的名称唯一性。

在早期版本的 .NET Framework中,此接口存在于特定于 WPF 的程序集 WindowsBase 中。 在 .NET Framework 4 中, INameScope 位于 System.Xaml 程序集中。 有关详细信息,请参阅 Types Migrated from WPF to System.Xaml

WPF 用法说明

此接口由 WPF 类 NameScope实现。 WPF 中的大多数 XAML 名称范围操作都使用 NameScope 实例运行,但偶尔会使用 INameScope 引用在内部传达信息。

使用工厂或延迟隐喻与 XAML 表示形式结合使用的 WPF 类的示例包括 StyleFrameworkTemplate。 这些实现通常依赖于 类中提供的 NameScope 接口方法的显式版本。

方法

FindName(String)

返回具有提供的标识名称的对象。

RegisterName(String, Object)

将提供的名称注册到当前的 XAML 名称范围中。

UnregisterName(String)

从当前的 XAML 名称范围中注销提供的名称。

适用于

另请参阅