【发布时间】:2012-08-10 12:57:16
【问题描述】:
我有一个 WPF 窗口,其中包含本地系统中一个文件的背景图像。所以 XAML 文件看起来像这样:
<Window.Background>
<ImageBrush ImageSource="/MYASSEMBLY;component/Resources/MyPic.png"/>
</Window.Background>
在 XAML 设计器中,它实际上显示了此背景图像,因此该图像确实存在于 MYASSEMBLY\Resources 文件夹中。但是,在我启动应用程序时的InitializeComponent() 函数调用中,它会抛出异常
找不到资源“resources/mypic.png”。
所以我现在完全迷路了。设计和运行时的目录是否不同,因此在运行时中不存在?
【问题讨论】:
-
你是否设置了对 dll 的引用?
-
镜像的构建模式? (看到设计师的东西说没什么)
-
谢谢@H.B. ,就像我对答案发表评论一样,我什至没有将图像包含在项目中。我猜设计师和运行时的行为不同对于像我这样的新人来说有点令人困惑。
-
@tete:我根本不推荐使用设计器,我不使用它,因为它很容易产生糟糕的代码,到处都是
Margins和Alignments。人们很容易最终使用捕捉,而不是使用不同的面板动态布局。 -
@H.B.因此,您是仅通过代码设计 xaml,还是使用诸如混合之类的设计工具?我实际上使用的是集成了 blend 的 VS12 RC。但我主要是一名编码员,所以我宁愿不学习它,除非我的老板这么说:)