Application.ResourceManagerRequested Evento
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Se produce durante el inicio de un nuevo subproceso de WinUI para permitir que el marco de trabajo pueda usar una implementación personalizada IResourceManager
para resolver los URI de recursos.
// Register
event_token ResourceManagerRequested(TypedEventHandler<IInspectable, ResourceManagerRequestedEventArgs const&> const& handler) const;
// Revoke with event_token
void ResourceManagerRequested(event_token const* cookie) const;
// Revoke with event_revoker
Application::ResourceManagerRequested_revoker ResourceManagerRequested(auto_revoke_t, TypedEventHandler<IInspectable, ResourceManagerRequestedEventArgs const&> const& handler) const;
public event TypedEventHandler<object,ResourceManagerRequestedEventArgs> ResourceManagerRequested;
function onResourceManagerRequested(eventArgs) { /* Your code */ }
application.addEventListener("resourcemanagerrequested", onResourceManagerRequested);
application.removeEventListener("resourcemanagerrequested", onResourceManagerRequested);
- or -
application.onresourcemanagerrequested = onResourceManagerRequested;
Public Custom Event ResourceManagerRequested As TypedEventHandler(Of Object, ResourceManagerRequestedEventArgs)
Tipo de evento
TypedEventHandler<IInspectable,ResourceManagerRequestedEventArgs>
Comentarios
El marco de WinUI crea una instancia de resourceManager de MRT Core para resolver los URI de recursos. Para obtener más información, consulte Administración de recursos con MRT Core. Si la aplicación necesita un comportamiento no estándar no proporcionado de forma predeterminada ResourceManager
para resolver un URI de recurso determinado, puede proporcionar su propia implementación personalizada de la interfaz IResourceManager para usarla en lugar del valor predeterminado ResourceManager
.
Controle el ResourceManagerRequested
evento para proporcionar el marco de WinUI con un IResourceManager personalizado para reemplazar el ResourceManager predeterminado que crea el marco. En el controlador de eventos, cree una instancia de su personalizado IResourceManager
y asígnelo a la propiedad ResourceManagerRequestedEventArgs.CustomResourceManager . El valor de esta propiedad es inicialmente null
y el marco solo lo comprueba una vez por evento después de que se hayan invocado todos los controladores de eventos registrados. Si el valor de la propiedad sigue siendo null
, el marco usará el valor predeterminado ResourceManager
.
Este evento se genera una vez por subproceso de WinUI durante la inicialización. Si usa lo mismo IResourceManager
para varios subprocesos, IResourceManager
debe ser seguro para subprocesos.
Se recomienda registrar el controlador de eventos en el constructor de clase App
para que esté disponible durante el inicio inicial de la aplicación, como se muestra aquí.
public App()
{
this.InitializeComponent();
ResourceManagerRequested += (_, e) =>
{
// CreateResourceManager() is a custom method you
// create that returns an instance of IResourceManager.
IResourceManager resourceManager = CreateResourceManager();
e.ResourceManager = resourceManager;
};
}