INameScope 接口
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
针对如何在特定的 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 类的示例包括 Style 和 FrameworkTemplate。 这些实现通常依赖于 类中提供的 NameScope 接口方法的显式版本。
方法
FindName(String) |
返回具有提供的标识名称的对象。 |
RegisterName(String, Object) |
将提供的名称注册到当前的 XAML 名称范围中。 |
UnregisterName(String) |
从当前的 XAML 名称范围中注销提供的名称。 |