CustomXamlResourceLoader Clase

Definición

Habilita la carga de diccionarios de recursos personalizados como orígenes. Invalide GetResource para proporcionar la lógica que un analizador XAML puede usar para buscar los recursos necesarios en tiempo de carga.

/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.UI.Xaml.WinUIContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class CustomXamlResourceLoader
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.UI.Xaml.WinUIContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public class CustomXamlResourceLoader
Public Class CustomXamlResourceLoader
Herencia
Object IInspectable CustomXamlResourceLoader
Atributos

Comentarios

CustomXamlResourceLoader admite un uso {CustomResource}de extensión de marcado . Esta extensión de marcado es única para el marco XAML de Windows Runtime (no existía en tecnologías XAML precursoras, como Windows Presentation Foundation (WPF) y Microsoft Silverlight).

Un {CustomResource} uso no funciona de forma predeterminada (la implementación base de GetResource está incompleta). Para hacer una referencia válida {CustomResource} , debe realizar cada uno de estos pasos:

  1. Derive una clase personalizada de CustomXamlResourceLoader e invalide el método GetResource . No llame a la función base en la implementación.
  2. Establezca CustomXamlResourceLoader.Current para hacer referencia a la clase en la lógica de inicialización. Esto debe ocurrir antes de que se cargue cualquier XAML de nivel de página que incluya el uso de la {CustomResource} extensión. Un lugar para establecer CustomXamlResourceLoader.Current está en el constructor de subclases Application que se genera automáticamente en las plantillas de código subyacente app.xaml.
  3. Ahora puedes usar {CustomResource} extensiones en el XAML que tu aplicación carga como páginas, o desde diccionarios de recursos XAML.

La extensión de marcado {CustomResource} se puede usar desde XAML de forma similar a la extensión de marcado {StaticResource}, que realiza la búsqueda de recursos integrada desde varias ubicaciones de ResourceDictionary . La diferencia es que la propia aplicación implementa la lógica de búsqueda de recursos para un uso de extensión de marcado {CustomResource} proporcionando un cargador de recursos personalizado. Para implementar el cargador de recursos personalizado, la aplicación debe proporcionar una clase que derive de CustomXamlResourceLoader e invalidar el método GetResource . La aplicación debe registrar su cargador de recursos personalizado estableciendo la propiedad estática CustomXamlResourceLoader.Current en una instancia de su clase de cargador de recursos personalizado. Este registro debe realizarse en un subproceso de interfaz de usuario XAML antes de cualquier análisis de XAML que use la extensión de marcado {CustomResource}. Si la aplicación usa varios subprocesos de interfaz de usuario, se debe realizar un registro independiente en cada uno.

La forma en que CustomXamlResourceLoader almacena sus recursos probablemente no está relacionada con ResourceDictionary en absoluto. Normalmente, además de las invalidaciones necesarias, la clase CustomXamlResourceLoader proporcionaría métodos internos o públicos que permiten almacenar, claver y trabajar con los elementos de recursos de una colección subyacente.

Constructores

Nombre Description
CustomXamlResourceLoader()

Inicializa una nueva instancia de la clase CustomXamlResourceLoader .

Propiedades

Nombre Description
Current

Devuelve la instancia de CustomXamlResourceLoader activa.

Métodos

Nombre Description
GetResource(String, String, String, String)

Cuando se reemplaza en una clase derivada, especifica la lógica de búsqueda de recursos para este CustomXamlResourceLoader. Dado un identificador de recurso y alguna información de tipo sobre el resultado esperado, devuelve el recurso solicitado.

Se aplica a

Consulte también