Comparteix a través de


INameScope Interfaz

Definición

Define un contrato de cómo se debe tener acceso a los nombres de elementos dentro de un ámbito de nombres XAML determinado y cómo aplicar la unicidad de nombres dentro de ese ámbito de nombres XAML.

public interface class INameScope
public interface INameScope
type INameScope = interface
Public Interface INameScope
Derivado

Comentarios

Esta interfaz se implementa mediante clases que tienen elementos secundarios que están diseñados para reutilizarse a través de la plantilla o aplazar la metáfora. Las plantillas, los generadores y construcciones similares deben tener ámbitos de nombres XAML únicos que sean independientes de un gráfico de objetos principal y xaml raíz. El principio aquí es que no debería haber colisiones de nombres cuando los objetos creados a partir de esos elementos secundarios se introducen en el gráfico de objetos de una aplicación, por lo que las operaciones DOM y las técnicas de referencia XAML que se basan en el identificador de nombre pueden basarse en la unicidad de nombres en cada ámbito de nombres XAML.

En versiones anteriores de .NET Framework, esta interfaz existía en el ensamblado específico de WPF WindowsBase. En .NET Framework 4, INameScope está en el ensamblado System.Xaml. Para obtener más información, consulta Types Migrated from WPF to System.Xaml.

Notas de uso de WPF

Esta interfaz se implementa mediante la clase NameScopeWPF . La mayoría de las operaciones de ámbito de nombres XAML en WPF funcionan mediante NameScope instancias, pero la información se comunica internamente internamente mediante INameScope referencias.

Ejemplos de clases de WPF que usan una metáfora de fábrica o aplazada combinada con representación XAML son Style y FrameworkTemplate. Estas implementaciones suelen basarse en las versiones explícitas de los métodos de interfaz disponibles en la NameScope clase .

Métodos

FindName(String)

Devuelve un objeto que tiene el nombre de identificación proporcionado.

RegisterName(String, Object)

Registra el nombre proporcionado en el ámbito de nombres XAML actual.

UnregisterName(String)

Anula el registro del nombre proporcionado en el ámbito de nombres XAML actual.

Se aplica a

Consulte también