Partilhar via


SystemEvents.UserPreferenceChanging Evento

Definição

Ocorre quando uma preferência do usuário está sendo alterada.

public:
 static event Microsoft::Win32::UserPreferenceChangingEventHandler ^ UserPreferenceChanging;
public static event Microsoft.Win32.UserPreferenceChangingEventHandler UserPreferenceChanging;
public static event Microsoft.Win32.UserPreferenceChangingEventHandler? UserPreferenceChanging;
member this.UserPreferenceChanging : Microsoft.Win32.UserPreferenceChangingEventHandler 
Public Shared Custom Event UserPreferenceChanging As UserPreferenceChangingEventHandler 

Tipo de evento

Exceções

Não há suporte para notificações de eventos do sistema no contexto atual. Os processos do servidor, por exemplo, podem não dar suporte a notificações de eventos globais do sistema.

A tentativa de criar um thread de janela de eventos do sistema não foi bem-sucedida.

Exemplos

O exemplo de código a seguir demonstra como monitorar o UserPreferenceChanging evento. Este exemplo de código faz parte de um exemplo maior fornecido para a SystemEvents classe .

int main()
{
    // Set the SystemEvents class to receive event notification
    // when a user preference changes, the palette changes, or
    // when display settings change.
    SystemEvents::UserPreferenceChanging += gcnew
        UserPreferenceChangingEventHandler(
        SystemEvents_UserPreferenceChanging);
    SystemEvents::PaletteChanged += gcnew
        EventHandler(SystemEvents_PaletteChanged);
    SystemEvents::DisplaySettingsChanged += gcnew
        EventHandler(SystemEvents_DisplaySettingsChanged);

    // For demonstration purposes, this application sits idle
    // waiting for events.
    Console::WriteLine("This application is waiting for system events.");
    Console::WriteLine("Press <Enter> to terminate this application.");
    Console::ReadLine();
}
static void Main() 
{         
    // Set the SystemEvents class to receive event notification when a user 
    // preference changes, the palette changes, or when display settings change.
    SystemEvents.UserPreferenceChanging += new 
        UserPreferenceChangingEventHandler(SystemEvents_UserPreferenceChanging);
    SystemEvents.PaletteChanged += new 
        EventHandler(SystemEvents_PaletteChanged);
    SystemEvents.DisplaySettingsChanged += new 
        EventHandler(SystemEvents_DisplaySettingsChanged);        

    // For demonstration purposes, this application sits idle waiting for events.
    Console.WriteLine("This application is waiting for system events.");
    Console.WriteLine("Press <Enter> to terminate this application.");
    Console.ReadLine();
}
'Set the SystemEvents class to receive event notification 
'when a user preference changes, the palette changes, or 
'when display settings change.
AddHandler SystemEvents.UserPreferenceChanging, _
AddressOf SystemEvents_UserPreferenceChanging

AddHandler SystemEvents.PaletteChanged, _
AddressOf SystemEvents_PaletteChanged

AddHandler SystemEvents.DisplaySettingsChanged, _
AddressOf SystemEvents_DisplaySettingsChanged

Comentários

Observação

Esse evento só será gerado se a bomba de mensagem estiver em execução. Em um serviço Windows, a menos que um formulário oculto seja usado ou a bomba de mensagem tenha sido iniciada manualmente, esse evento não será gerado. Para obter um exemplo de código que mostra como lidar com eventos do sistema usando um formulário oculto em um serviço Windows, consulte a SystemEvents classe .

Cuidado

Como esse é um evento estático, você deve desanexar os manipuladores de eventos quando o aplicativo for descartado ou ocorrerá vazamentos de memória.

Aplica-se a

Confira também