我正在用C#创建一个Windows应用商店应用,我有一个普通的 TextBlock ,里面有一个链接。所有我想要做的就是当光标越过文本块时让光标变成一只手,但与WPF应用程序不同,没有 Cursor 的适当性。我知道Windows.UI.Core
中的 CoreCursor 类。我想以某种方式使用它吗?
答案 0 :(得分:28)
Window.Current.CoreWindow.PointerCursor =
new Windows.UI.Core.CoreCursor(Windows.UI.Core.CoreCursorType.Hand, 1);
答案 1 :(得分:2)
WinRT XAML Toolkit有一个附加属性,与WPF中的Cursor
属性大致相同,因为您为元素设置了游标,因此当鼠标光标悬停在该元素的顶部时 - 光标更改属性指定的内容以及何时离开控制边界 - 它将恢复上一个光标。实际上有两个属性 - 一个名为FrameworkElementExtensions.SystemCursor
,可以从CoreCursorType enum获取任何标准光标,您只需使用this sample page - set
<Border
xmlns:Extensions="using:WinRTXamlToolkit.Controls.Extensions"
Extensions:FrameworkElementExtensions.SystemCursor="Cross"/>
另一个 - FrameworkElementExtensions.Cursor
允许您设置任何自定义光标,但我相信您需要在代码后面设置它,如FrameworkElementExtensions.SetCursor(myElement, myCursor);
或绑定到其他地方设置的游标属性。
您还可以使用自定义光标。您需要按照this article中的描述在本机资源库中定义游标,然后您应该能够通过设置Window.Current.CoreWindow.PointerCursor
属性或使用像{{3}这样的附加属性来全局设置它们。 }。