[update] 修复TrayIcon资源改名后导致的问题.

This commit is contained in:
Dubi906w 2024-06-13 20:28:34 +08:00
parent 3433d2b14d
commit dc1fbdec78
5 changed files with 38 additions and 26 deletions

View File

@ -227,6 +227,7 @@
</MenuItem>
</ContextMenu>
<tb:TaskbarIcon x:Key="TaskbarTrayIcon"
Visibility="Collapsed"
ToolTipText="InkCanvasForClass"
ContextMenu="{StaticResource SysTrayMenu}"
IconSource="/Resources/icc.ico"/>

View File

@ -53,7 +53,7 @@ namespace Ink_Canvas
Environment.Exit(0);
}
_taskbar = (TaskbarIcon)FindResource("Taskbar");
_taskbar = (TaskbarIcon)FindResource("TaskbarTrayIcon");
StartArgs = e.Args;
}

View File

@ -145,6 +145,7 @@ namespace Ink_Canvas.Helpers
//the warning for the whole project, it's a nice warning and we do want
//it in other places so we make a nice dummy function to keep the compiler
//happy.
// 代码应该在警告级别 4 下编译而不会出现任何警告,但是此结构将给出警告 CS0649字段 [Fieldname] 从未分配,并且始终具有其默认值。您可以在项目选项中禁用 CS0649但这将禁用整个项目的警告这是一个很好的警告我们确实希望它在其他地方所以我们制作了一个不错的虚拟函数来让编译器满意。
private void FixCS0649()
{
Length = 0;

View File

@ -473,7 +473,6 @@ namespace Ink_Canvas {
ToggleSwitchIsEnableFullScreenHelper.IsOn = Settings.Advanced.IsEnableFullScreenHelper;
if (Settings.Advanced.IsEnableFullScreenHelper) {
FullScreenHelper.MarkFullscreenWindowTaskbarList(new WindowInteropHelper(this).Handle, true);
}

View File

@ -12,6 +12,7 @@ using System.Windows.Controls;
using System.Windows.Forms.VisualStyles;
using System.Windows.Interop;
using System.Windows.Media.Animation;
using Hardcodet.Wpf.TaskbarNotification;
namespace Ink_Canvas
{
@ -94,9 +95,11 @@ namespace Ink_Canvas
}
private void HideICCMainWindowTrayIconMenuItem_Checked(object sender, RoutedEventArgs e) {
var mi = (MenuItem)sender;
var mainWin = (MainWindow)Application.Current.MainWindow;
if (mainWin.IsLoaded) {
mainWin.Hide();
var s = (ContextMenu)_taskbar.ContextMenu;
var s = ((TaskbarIcon)Application.Current.Resources["TaskbarTrayIcon"]).ContextMenu;
var ResetFloatingBarPositionTrayIconMenuItem = (MenuItem)s.Items[s.Items.Count - 4];
var FoldFloatingBarTrayIconMenuItem = (MenuItem)s.Items[s.Items.Count - 5];
var ForceFullScreenTrayIconMenuItem = (MenuItem)s.Items[s.Items.Count - 6];
@ -106,13 +109,18 @@ namespace Ink_Canvas
ResetFloatingBarPositionTrayIconMenuItem.Opacity = 0.5;
FoldFloatingBarTrayIconMenuItem.Opacity = 0.5;
ForceFullScreenTrayIconMenuItem.Opacity = 0.5;
} else {
mi.IsChecked = false;
}
private void HideICCMainWindowTrayIconMenuItem_UnChecked(object sender, RoutedEventArgs e)
{
}
private void HideICCMainWindowTrayIconMenuItem_UnChecked(object sender, RoutedEventArgs e) {
var mi = (MenuItem)sender;
var mainWin = (MainWindow)Application.Current.MainWindow;
if (mainWin.IsLoaded) {
mainWin.Show();
var s = (ContextMenu)_taskbar.ContextMenu;
var s = ((TaskbarIcon)Application.Current.Resources["TaskbarTrayIcon"]).ContextMenu;
var ResetFloatingBarPositionTrayIconMenuItem = (MenuItem)s.Items[s.Items.Count - 4];
var FoldFloatingBarTrayIconMenuItem = (MenuItem)s.Items[s.Items.Count - 5];
var ForceFullScreenTrayIconMenuItem = (MenuItem)s.Items[s.Items.Count - 6];
@ -122,6 +130,9 @@ namespace Ink_Canvas
ResetFloatingBarPositionTrayIconMenuItem.Opacity = 1;
FoldFloatingBarTrayIconMenuItem.Opacity = 1;
ForceFullScreenTrayIconMenuItem.Opacity = 1;
} else {
mi.IsChecked = false;
}
}
}