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的更完整说明

相关文章

目录简介使用JS互操作使用ClipLazor库创建项目使用方法简单测...
目录简介快速入门安装 NuGet 包实体类User数据库类DbFactory...
本文实现一个简单的配置类,原理比较简单,适用于一些小型项...
C#中Description特性主要用于枚举和属性,方法比较简单,记录...
[TOC] # 原理简介 本文参考[C#/WPF/WinForm/程序实现软件开机...
目录简介获取 HTML 文档解析 HTML 文档测试补充:使用 CSS 选...