C#将png图标添加到系统托盘

C#将png图标添加到系统托盘,c#,system-tray,trayicon,C#,System Tray,Trayicon,我有一些带有许多透明像素的png图标,我想把它们添加到托盘中。 我使用了NotifyIcon,我必须将.pngs转换为.ico格式 在这里你可以看到两个带有数字的图标。左一个是用C#作为.ico添加的,右一个是用Java作为.png添加的。C#图标看起来很模糊 我还尝试加载png,将其转换为位图,然后转换为图标。但这样我就失去了所有的透明度 有没有一种直接使用png的方法,比如在Java中,或者至少让它成为一个不模糊的图标 UPD:检查了我的ico文件——它们看起来很好,看起来和PNG一模一

我有一些带有许多透明像素的png图标,我想把它们添加到托盘中。 我使用了NotifyIcon,我必须将.pngs转换为.ico格式

在这里你可以看到两个带有数字的图标。左一个是用C#作为.ico添加的,右一个是用Java作为.png添加的。C#图标看起来很模糊

我还尝试加载png,将其转换为位图,然后转换为图标。但这样我就失去了所有的透明度

有没有一种直接使用png的方法,比如在Java中,或者至少让它成为一个不模糊的图标


UPD:检查了我的ico文件——它们看起来很好,看起来和PNG一模一样。所以我假设图标在添加到托盘时会变得模糊。

@Hans我的图标是16x16。现在我已经尝试创建32x32图标,我已经升级了自己没有模糊-它工作了,现在图标看起来像它的Java兄弟。我想,有一个32x32版本,它是自动创建的。
Bitmap b=(Bitmap)Image.FromFile("res\\b" + percentageCurrent + ".png");
IntPtr pIcon=b.GetHicon();
Icon ico=Icon.FromHandle(pIcon);