WPF关于“在“System.Windows.Markup.StaticResourceHolder”上提供值时引发了异常。”问题解决办法

时间:2021-09-24 14:11:08

在WPF中添加样式,在MainWindow.xaml使用自定义按钮FButton时报错,报错信息如下:

“System.Windows.Markup.XamlParseException”类型的未经处理的异常在 PresentationFramework.dll 中发生 其他信息: “在“System.Windows.Markup.StaticResourceHolder”上提供值时引发了异常。”,行号为“17”,行位置为“28”。

WPF关于“在“System.Windows.Markup.StaticResourceHolder”上提供值时引发了异常。”问题解决办法

代码结构如下:

WPF关于“在“System.Windows.Markup.StaticResourceHolder”上提供值时引发了异常。”问题解决办法

出现此问题的原因为在App.xaml中只引用了FButton的样式及其他全局样式,而FButton为自定义按钮控件,所以需要将其引用到App.xaml中。(本人初学,理解可能有误,但解决办法是有效的)。

具体解决步骤如下:

1.在Themes/Generic.xaml中添加FButton的引用;

WPF关于“在“System.Windows.Markup.StaticResourceHolder”上提供值时引发了异常。”问题解决办法

WPF关于“在“System.Windows.Markup.StaticResourceHolder”上提供值时引发了异常。”问题解决办法

2.将Generic.xaml引用到App.xaml中;

WPF关于“在“System.Windows.Markup.StaticResourceHolder”上提供值时引发了异常。”问题解决办法

3.完整的MainWindow.xaml代码如下;

WPF关于“在“System.Windows.Markup.StaticResourceHolder”上提供值时引发了异常。”问题解决办法

这下运行就完美了。

WPF关于“在“System.Windows.Markup.StaticResourceHolder”上提供值时引发了异常。”问题解决办法

小结:WPF中所写的样式及自定义控件全部引用到全局中,基本上解决资源无法引用的错误。