Пример #1
0
 private void Settings_SettingChanged(object sender, SettingChangedArgs args)
 {
     if (args.SettingName == nameof(settings.HideTaskBarIcon))
     {
         if (settings.HideTaskBarIcon == Settings.HideTaskBarIconValues.NEVER)
         {
             ShowInTaskbar = true;
         }
         else if (settings.HideTaskBarIcon == Settings.HideTaskBarIconValues.WHEN_MINIMIZED)
         {
             ShowInTaskbar = WindowState != FormWindowState.Minimized;
         }
         else if (settings.HideTaskBarIcon == Settings.HideTaskBarIconValues.ALWAYS)
         {
             ShowInTaskbar = false;
         }
     }
     else if (args.SettingName == nameof(settings.AlwaysOnTop))
     {
         TopMost = settings.AlwaysOnTop;
     }
     else if (args.SettingName == nameof(settings.TrayIconBackground) || args.SettingName == nameof(settings.TrayIconForeground))
     {
         dynamicIcons.Reset();
         UpdateSystemTrayIcon();
     }
 }
Пример #2
0
        public void ResetClearsInternalCacheOfPreviouslyRenderedIcons()
        {
            using DynamicIcons icons = new DynamicIcons();
            Icon unknownIcon1 = icons.GetIconForUnknown(FG, BG);
            Icon numberIcon1  = icons.GetIconForNumber(42, FG, BG);

            icons.Reset();

            Icon unknownIcon2 = icons.GetIconForUnknown(FG, BG);
            Icon numberIcon2  = icons.GetIconForNumber(42, FG, BG);

            Assert.AreNotSame(unknownIcon1, unknownIcon2);
            Assert.AreNotSame(numberIcon1, numberIcon2);
        }