我在自定义控件上有一个按钮,我试图在其上显示一个图像,该图像在我的 App.xaml 文件中定义为资源,如下所示:
<Application.Resources>
<BitmapImage x:Key="PlusSymbol" UriSource="Resources/PlusSymbol.png" />
</Application.Resources>
由于某种原因,我不能在 Themes\Generic.xaml 文件中定义的自定义控件模板中将其用作静态资源,它在运行时使我的应用程序崩溃,说它找不到请求的资源。这是我用来绑定到资源的 xaml 代码:
<Button Grid.Row="0" Grid.Column="1" Margin="3">
<Image Source="{StaticResource PlusSymbol}"/>
</Button>
如果我以完全相同的方式但在 Generic.xaml 文件中定义资源,它确实在运行时工作,但是它给了我一个预编译器警告它找不到该文件,因为它现在正在主题/资源/中寻找它而不仅仅是在 /Resources/ 中。所以我在设计时收到警告,但它在运行时工作正常。
那么为什么它在 App.xaml 中定义时找不到我的资源?我在常规 WPF 项目中以完全相同的方式执行此操作,并且它完美地工作,但在这个自定义控件库中,它让我很头疼。任何帮助深表感谢!