我希望在我的WPF应用程序中设置自定义光标。最初,我有一个.png文件,我将其转换为.ico文件,但由于我没有找到在WPF中设置.ico文件作为光标的方法,因此我尝试使用正确的.cur文件来实现这一点。
我使用Visual Studio 2013(New Item-> Cursor File)创建了这样一个.cur文件。该光标是一个彩色的24位图像,其构建类型为“资源”。
我使用以下代码获取资源流:
这段代码可以检索流,因此在此之后
尝试创建游标时:
默认光标
请问有人能告诉我为什么ctor无法处理我的光标流吗?该文件是使用VS2013创建的,因此我认为.cur文件格式正确。或者:如果有人知道如何将.ico文件加载为WPF中的光标,我将非常高兴和感激。
编辑:尝试使用来自VS2013的全新.cur文件(8bpp),以防添加新调色板会破坏图像格式。结果相同。System.Windows.Input.Cursor的.ctor甚至无法从“fresh”光标文件创建适当的光标。
我使用Visual Studio 2013(New Item-> Cursor File)创建了这样一个.cur文件。该光标是一个彩色的24位图像,其构建类型为“资源”。
我使用以下代码获取资源流:
var myCur = Application.GetResourceStream(new Uri("pack://application:,,,/mycur.cur")).Stream;
这段代码可以检索流,因此在此之后
myCur
不是空的。尝试创建游标时:
var cursor = new System.Windows.Input.Cursor(myCur);
默认光标
Cursors.None
被返回而不是我的自定义光标。看起来有问题。请问有人能告诉我为什么ctor无法处理我的光标流吗?该文件是使用VS2013创建的,因此我认为.cur文件格式正确。或者:如果有人知道如何将.ico文件加载为WPF中的光标,我将非常高兴和感激。
编辑:尝试使用来自VS2013的全新.cur文件(8bpp),以防添加新调色板会破坏图像格式。结果相同。System.Windows.Input.Cursor的.ctor甚至无法从“fresh”光标文件创建适当的光标。