15

我正在用 C# 制作一个 Windows 应用商店应用程序,并且我有一个普通的TextBlock,里面有一个链接。我想做的就是让光标在越过文本块时变成一只手,但与 WPF 应用程序不同的是,没有Cursor的适当性。我知道是一个CoreCursorWindows.UI.Core。我想以某种方式使用它吗?

4

2 回答 2

28
Window.Current.CoreWindow.PointerCursor = 
    new Windows.UI.Core.CoreCursor(Windows.UI.Core.CoreCursorType.Hand, 1);
于 2011-10-18T20:23:15.697 回答
2

WinRT XAML Toolkit 有一个附加属性,其工作方式与 WPF 中的属性几乎相同,Cursor因为您为元素设置光标,因此当您的鼠标光标悬停在该元素顶部时 - 光标将更改为属性指定的内容以及何时它离开控制范围 - 它恢复前一个光标。实际上有两个属性 - 一个调用来自CoreCursorType 枚举FrameworkElementExtensions.SystemCursor的任何标准光标,您只需像在此示例页面中一样使用它- 集

<Border
    xmlns:Extensions="using:WinRTXamlToolkit.Controls.Extensions"
    Extensions:FrameworkElementExtensions.SystemCursor="Cross"/>

另一个 -FrameworkElementExtensions.Cursor允许您设置任何自定义光标,但我相信您需要在代码后面设置它FrameworkElementExtensions.SetCursor(myElement, myCursor);或绑定到其他地方设置的光标属性。

您还可以使用自定义光标。您需要按照本文所述在本机资源库中定义一个游标,然后您应该能够通过设置Window.Current.CoreWindow.PointerCursor属性或使用附加属性(如 my FrameworkElementExtensions.Cursor.

于 2014-09-09T16:14:45.760 回答