我正在尝试为我的WPF应用程序获取自定义光标。我已经在参考资料中有.cur文件了。在xaml中,我提到了类似的资源字典:
<Window.Resources>
<ResourceDictionary>
<FrameworkElement x:Key="KinectCursor" Cursor="Resources/KinectCursor.cur"/>
<FrameworkElement x:Key="KinectCursor16" Cursor="Resources/KinectCursor16.cur"/>
</ResourceDictionary>
</Window.Resources>
在代码隐藏中,我尝试将Mouse.OverrdeCursor属性设置为此游标,但它会抛出异常。
private void Window_Loaded(object sender, RoutedEventArgs e)
{
//Mouse.OverrideCursor = this.Resources["KinectCursor"].Cursor;
Mouse.OverrideCursor = ((FrameworkElement)this.Resources["KinectCursor"]).Cursor;
//DisplayArea.Cursor = Cursors.Hand;
}
编辑 - 异常消息: 发生了XAMLParseException。 '为'System.Windows.Baml2006.TypeConverterMarkupExtension'提供价值,引发了一个异常。行号'7'和行位置'14'。
有任何提示吗?
答案 0 :(得分:2)
如果传递错误的相对图标路径,有时会发生此错误。试着这样做:
...
<FrameworkElement x:Key="KinectCursor" Cursor="pack://application:,,,/(AssemblyName);component/Resources/KinectCursor.cur"/>
...