微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

C#WPF窗口背景

参见英文答案 > How do I change an image source dynamically from code-behind in WPF with an image in Properties.Resources?                                    1个
我使用Resources.resx添加一个png文件,它位于一个名为resources的文件夹中.
我正在尝试将主窗口背景更改为图像.

this.Background = Properties.Resources.backGround;

给出不能隐式转换System.Drawing.Bitmap类型到System.Windows.Media.Brush

我试图遵循我发现的其他答案

this.Background = new ImageBrush(new BitmapImage(new Uri(@"pack://application:,/myapp;component/Images/icon.png")));

但老实说,我无法弄清楚如何使用@“包……等等”我尝试过这样的事情

@"pack://Info Collector:,/myapp;component/resources/backGround.png")));

但我再也找不到任何解释这条线的好资源.

先谢谢你.

解决方法

包URL可以将您带到位于正在执行的应用程序域中的文件.你总是独自留下第一部分:

pack://application:,/

之后,您将组件的名称后跟分号.如果资源在使用程序集中,则可以只使用分号.然后你把:

component/

其次是资源的“文件夹路径”.把它们放在一起就可以得到类似的东西:

pack://application:,/<assemblyName>;component/<pathToResource>

请注意,您的文件需要以这种方式找到“资源”的构建操作.可以在MSDN找到有关包URI的更完整说明

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐