创建新的System.Drawing.Icon时“无法在程序集中创建实例”

时间:2011-01-12 13:30:28

标签: .net wpf icons trayicon

我正在尝试使用以下代码行在WPF中创建系统托盘图标:

System.Windows.Forms.NotifyIcon ni = new System.Windows.Forms.NotifyIcon();
ni.Icon = new System.Drawing.Icon("main.ico");

XAML:

> <Window x:Class="WpfExample.Window1"
>     xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
>     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
>     Title="Window1" Height="300" Width="300">
>     <Grid>
>         <Button Height="23" Margin="103,0,100,100" Name="button1"
> VerticalAlignment="Bottom">Submit</Button>
>         <TextBox Height="23" Margin="77,75,81,0" Name="textBox1"
> VerticalAlignment="Top" />
>     </Grid> </Window>

我在Google上搜索了一个解决方案,但我正在尝试学习WPF,这是我在创建系统托盘图标时遇到的问题。我得到的信息如下所示:

  

无法创建'Window1'的实例   在程序集'WpfExample中定义,   版本= 1.0.0.0,文化=中立,   公钥=空”。例外有   被一个人的目标所抛出   调用。标记文件出错   'Window1.xaml'第1行第9位。

有人能指出我正确的方向吗?

2 个答案:

答案 0 :(得分:1)

.ico必须采用标准格式,尺寸和颜色。 我有一个问题。

尝试获取并使用此图标文件,并告诉它是否有效:

http://www.iconarchive.com/download/visualpharm/must-have/Check.ico

这里有更多图标:

http://www.iconarchive.com/category/system/must-have-icons-by-visualpharm.html

答案 1 :(得分:1)

我创建了一个显示托盘图标的小样本应用程序。您可以尝试运行它并研究代码的工作原理。我将它上传到SkyDrive:

http://cid-1fe4c9928da08eaa.office.live.com/self.aspx/P%c3%bablico/Tray-WpfApplication1.zip