Partager via


Application.ResourceManagerRequested Événement

Définition

Se produit lors du démarrage d’un nouveau thread WinUI pour vous permettre de fournir une implémentation personnalisée IResourceManager à utiliser par l’infrastructure pour résoudre les URI de ressource.

// 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) 

Type d'événement

Remarques

L’infrastructure WinUI instancie un ResourceManager MRT Core pour résoudre les URI de ressource. Pour plus d’informations, consultez Gérer les ressources avec MRT Core. Si votre application a besoin d’un comportement non standard qui n’est pas fourni par défaut ResourceManager pour résoudre un URI de ressource particulier, vous pouvez fournir votre propre implémentation personnalisée de l’interface IResourceManager à utiliser au lieu de la valeur par défaut ResourceManager.

Gérez l’événement ResourceManagerRequested pour fournir à l’infrastructure WinUI un IResourceManager personnalisé pour remplacer le ResourceManager par défaut créé par l’infrastructure. Dans le gestionnaire d’événements, instanciez votre personnalisé IResourceManager et affectez-le à la propriété ResourceManagerRequestedEventArgs.CustomResourceManager . La valeur de cette propriété est initialement null, et elle n’est vérifiée par l’infrastructure qu’une fois par levée d’événement une fois que tous les gestionnaires d’événements inscrits ont été appelés. Si la valeur de la propriété est toujours null, l’infrastructure utilise la valeur par défaut ResourceManager.

Cet événement est déclenché une fois par thread WinUI lors de l’initialisation. Si vous utilisez le même IResourceManager pour plusieurs threads, le IResourceManager doit être thread-safe.

Nous vous recommandons d’inscrire le gestionnaire d’événements dans le App constructeur de classe afin qu’il soit disponible lors du lancement initial de l’application, comme illustré ici.

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;
   };
}

S’applique à

Voir aussi