将字符串打包到WPF用户控件库中
本文关键字:用户 控件 WPF 字符串 | 更新日期: 2023-09-27 18:27:08
我最初在我的主项目中创建了一个用户控件。我现在创建了一个使用WPF用户控件库模板的新项目,并将我的控件移到了那里。
我遇到的问题是,我的控件使用图像作为按钮的内容。我已经将图像和控件一起移动到新项目中,但我无法使Pack URI工作。控件和图像都位于名为MyControl
的项目的同一文件夹中,新项目名称为MyControls
。
我试过:
<Button Name="Button1" ToolTip="Button1" Click="Button1Action">
<Image Source="pack://application:,,,/MyControl/image1.png" />
</Button>
和
<Button Name="Button1" ToolTip="Button1" Click="Button1Action">
<Image Source="pack://application:,,,MyControls;/MyControl/image1.png" />
</Button>
我还尝试将图像添加到Resources.resx
文件中,然后在Code Behind中将其转换为BitmapSource
,创建一个Image控件,将其源设置为BitmapSource
,然后将Button.Content
设置为Image
。我认为,由于png有一个透明的背景,它在这个过程中被搞砸了,所以使用这种方法显示为黑色背景。
项目中映像的Build Action设置为Resource
,所以我认为我只是缺少正确的Pack字符串。
您的第二个包uri很接近,但您漏掉了一个单词(和一个斜杠)!应该是
<Image Source="pack://application:,,,/MyControls;component/MyControl/image1.png" />