示例#1
0
        /// <summary>
        /// Native .Net implementation of Microsoft.Win32.SystemEvents.PowerModeChanged does not work on MacOS: do nothing for Mono
        /// Therefore, we can use this function to get power change notifications from OS-specific implementation
        ///
        /// Do not use 'Microsoft.Win32.SystemEvents.PowerModeChanged' event directly in common code
        /// Instead, use: 'Platform.PowerModeChanged'
        /// </summary>
        public static void NotifyPowerModeChanged(object sender, Microsoft.Win32.PowerModeChangedEventArgs e)
        {
            // External notification in use.
            // Unsubscribe from default event for future
            PowerModeChanged -= NativeNotifyPowerModeChanged;

            // Call event

            PowerModeChanged?.Invoke(sender, e);
        }
 private void ChangePowerMode()
 {
     PowerModeChanged?.Invoke(SystemInformation.PowerStatus.PowerLineStatus);
 }
示例#3
0
 /// <summary>
 /// .Net implementation of PowerModeChanged
 /// </summary>
 public static void NativeNotifyPowerModeChanged(object sender, Microsoft.Win32.PowerModeChangedEventArgs e)
 {
     PowerModeChanged?.Invoke(sender, e);
 }