Dan*_*gel 6 c# wpf resources visual-studio
我需要动态更改应用于我的一个按钮的背景图像,但无法弄清楚如何.图像将添加到项目中,并将其"构建操作"设置为"资源".我试过以下:
buttonUnits.Background = new ImageBrush(new BitmapImage(new Uri("/Images/InchDOWN.png",UriKind.Relative)));
Run Code Online (Sandbox Code Playgroud)
这成功编译,但会在DirectoryNotFoundException崩溃时说"无法找到路径的一部分'C:\ Images\InchDOWN.png'."
我不希望应用程序在磁盘上查找图像.如何将图像用作嵌入式资源?我认为它涉及将构建操作更改为嵌入式资源,但如何在后面的代码中使用此资源?
您必须将图像构建为资源而不是嵌入式资源.资源是专门用于WPF项目的.
要在程序代码中使用它:
buttonUnits.Background = new ImageBrush(new BitmapImage(new Uri("pack://application:,,,/Images/InchDOWN.png")));
Run Code Online (Sandbox Code Playgroud)
在我推荐的XAML中,这样做要容易得多.
编辑
我在图像之前忘记了正斜杠,这可能是问题所在.如果您需要更多信息,这是一篇关于包Uris的MSDN文章.
也许你应该发一个问题,说明你究竟想要完成什么,并希望发现你的多状态按钮问题的不同方法.
| 归档时间: |
|
| 查看次数: |
13585 次 |
| 最近记录: |