【问题标题】:C# WPF window background [duplicate]C# WPF 窗口背景 [重复]
【发布时间】:2016-12-08 23:30:40
【问题描述】:

我使用 Resources.resx 添加了一个 png 文件,它位于一个名为 resources 的文件夹中。 我正在尝试将我的主窗口背景更改为图像。

 this.Background = Properties.Resources.backGround;

gives 不能将 System.Drawing.Bitmap 类型隐式转换为 System.Windows.Media.Brush

我已尝试遵循我找到的其他答案,例如

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

但老实说,我不知道如何使用 @"pack... etc" 我尝试过类似的方法

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

但我又找不到任何好的资源来解释这条线。

提前谢谢你。

【问题讨论】:

    标签: c# wpf


    【解决方案1】:

    Pack URL 是一种可让您访问位于正在执行的应用程序域中的文件的 URL。你总是不理会第一部分:

    pack://application:,,,/
    

    然后,您将程序集的名称放在分号后面。如果资源在 using 程序集中,则只需放置分号即可。然后你把:

    component/
    

    后跟资源的“文件夹路径”。把它们放在一起,你会得到类似的东西:

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

    请注意,您的文件需要通过这种方式找到“资源”的构建操作。可以在MSDN上找到更完整的 Pack URI 解释

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-05-05
      • 2016-01-22
      • 2010-12-12
      • 1970-01-01
      • 1970-01-01
      • 2012-12-27
      相关资源
      最近更新 更多