我正在使用hand2.cur
在我的 C#-WPF 应用程序中命名的自定义光标。我已将光标添加到一个名为的文件夹中,该文件夹Images
包含我在应用程序中使用的所有图像。但是我意识到我不能添加相对路径来使用我的自定义光标:
Cursor newCur = new Cursor("Images\\hand2.cur");
window.Cursor = newCur;
所以我用了这个:
string absolute = System.IO.Path.GetFullPath("hand2.cur");
Cursor newCur = new Cursor(absolute);
window.Cursor = newCur;
这会尝试在文件夹中查找hand2.cur
文件\bin\Release
。所以我在那里添加了文件,我让它工作了。
但问题是,如果我Publish
这个应用程序并在另一台计算机上使用它,它就不起作用。现在问题出在光标文件路径上,因为如果我在评论这 3 行之后部署它,它就可以正常工作。那么我该怎么做才能纠正这个问题呢?
我Image
在我的 XAML 代码中使用该文件夹中的其他图像,它们似乎可以正常移植。但话又说回来,我对 WPF 的了解是有限的,所以如果有人有任何想法,那会有所帮助。
编辑:我已将我的图像文件夹添加到项目中。我还将光标文件的构建操作设置hand2.cur
为Embedded Resource
. 但是,当我使用以下两行时,我得到一个XAMLParseException
.
System.Windows.Resources.StreamResourceInfo info = Application.GetResourceStream(new Uri("pack://application:,,,/Slideshow;component/Images/hand2.cur"));
window.Cursor = new System.Windows.Input.Cursor(info.Stream);
Inner Exception
我查看错误详细信息时的字段为:{"Cannot locate resource 'images/hand2.cur'."}