我有以下目录结构
Project
\Images
+view.png
control.xaml
在控件中,我有一个由以下 XAML 定义的按钮:
<Button Click="Search"
Grid.Column="1"
Margin="0,5,5, 0"
HorizontalAlignment="Right">
<Button.Template>
<ControlTemplate TargetType="{x:Type Button}">
<Image Source="pack://application:,,,/images/view.png"
Width="16"
Height="16"
ToolTip="Search"
Cursor="Hand"
Opacity="0.8" />
</ControlTemplate>
</Button.Template>
</Button>
但是,这个包 URI 方法和“/images/view.png”都不起作用。据我了解,这与这个问题提出的问题相同。但是,我得到同样的错误。令人困惑的是,在 Visual Studio 2008 的设计器中,图像正确呈现,但在调用 InitializeComponent() 时,我得到:
无法将属性“Source”中的字符串“pack://application:,,,/images/view.png”转换为“System.Windows.Media.ImageSource”类型的对象。找不到资源“images/view.png”。标记文件“RecapSpecEditControl;component/modaltreadgroupdatadialog.xaml”第 61 行位置 40 中的对象“System.Windows.Controls.ControlTemplate”出错。
我想也许有一个我必须声明的命名空间,但根据msdn 网站,我相信我不必做这样的事情。