DekGenius.com
[ Team LiB ] Previous Section Next Section

SystemEvents

Microsoft.Win32 (system.dll)sealed class

This class provides global events for select Windows operating system events. You can write event handlers to receive these. Some of the events include notifications that occur when user settings are changed (DisplaySettingsChanged, TimeChanged, and UserPreferenceChanged) or when the system state changes (LowMemory, PowerModeChangedSessionEnded, and SessionEnding). You can also receive notifications about new fonts (InstalledFontsChanged) and palette switching in 256-color mode (PaletteChanged).

System event handlers are executed on a different thread than the rest of your program. For this reason, code in the event handler must be thread-safe. If your event handler needs access to other objects from your program, you can use the static method InvokeOnEventsThread( ) to instantiate these objects on the system event listener thread. This way, they are easily accessible to the event handler code.

Do not perform time-consuming tasks in a system event handler, as it may cause problems with other applications that are also trying to handle the event.

public sealed class SystemEvents {
// Public Static Methods
   public static IntPtr CreateTimer(int interval);
   public static void InvokeOnEventsThread(Delegate method);
   public static void KillTimer(IntPtr timerId);
// Events
   public event EventHandler DisplaySettingsChanged;
   public event EventHandler EventsThreadShutdown;
   public event EventHandler InstalledFontsChanged;
   public event EventHandler LowMemory;
   public event EventHandler PaletteChanged;
   public event PowerModeChangedEventHandler PowerModeChanged;
   public event SessionEndedEventHandler SessionEnded;
   public event SessionEndingEventHandler SessionEnding;
   public event EventHandler TimeChanged;
   public event TimerElapsedEventHandler TimerElapsed;
   public event UserPreferenceChangedEventHandler UserPreferenceChanged;
   public event UserPreferenceChangingEventHandler UserPreferenceChanging;
}
    [ Team LiB ] Previous Section Next Section