Skip to Main Content
C# in a Nutshell
book

C# in a Nutshell

by Ben Albahari, Ted Neward, Peter Drayton
March 2002
Intermediate to advanced content levelIntermediate to advanced
864 pages
31h 8m
English
O'Reilly Media, Inc.
Content preview from C# in a Nutshell

Name

SystemEvents

Synopsis

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, PowerModeChanged SessionEnded, 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 method IntPtr CreateTimer(int interval);  
   public static method void InvokeOnEventsThread(
        Delegate method);  
   public static method void KillTimer(IntPtr timerId);  
// Events
   public event field EventHandler DisplaySettingsChanged;  
   public event field EventHandler EventsThreadShutdown;  
   public event field EventHandler InstalledFontsChanged; public ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

C# 8.0 in a Nutshell

C# 8.0 in a Nutshell

Joseph Albahari, Eric Johannsen
C# 10 in a Nutshell

C# 10 in a Nutshell

Joseph Albahari
C# in a Nutshell, Second Edition

C# in a Nutshell, Second Edition

Peter Drayton, Ben Albahari, Ted Neward
Code like a Pro in C#

Code like a Pro in C#

Jort Rodenburg

Publisher Resources

ISBN: 0596001819Catalog PageErrata