다음을 통해 공유


SystemEvents.UserPreferenceChanging 이벤트

정의

사용자 기본 설정이 변경될 때 발생됩니다.

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 

이벤트 유형

예외

현재 컨텍스트에서는 시스템 이벤트 알림이 지원되지 않습니다. 예를 들어, 서버 프로세스에서 전역 시스템 이벤트 알림을 지원하지 않을 수 있습니다.

시스템 이벤트 창 스레드를 만들지 못한 경우

예제

다음 코드 예제에서는 이벤트를 모니터링 하는 방법을 보여 줍니다 UserPreferenceChanging . 이 코드 예제는에 대해 제공 된 큰 예제의 일부는 SystemEvents 클래스입니다.

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

설명

참고

이 이벤트는 메시지 펌프가 실행 중인 경우에만 발생합니다. Windows 서비스에서 숨겨진 양식을 사용하거나 메시지 펌프를 수동으로 시작하지 않으면 이 이벤트가 발생하지 않습니다. Windows 서비스에서 숨겨진 양식을 사용하여 시스템 이벤트를 처리하는 방법을 보여 주는 코드 예제는 클래스를 SystemEvents 참조하세요.

주의

정적 이벤트 이기 때문에 애플리케이션 삭제 되거나 메모리 누수가 발생 하는 경우 이벤트 처리기를 분리 해야 합니다.

적용 대상

추가 정보