2011-09-19 26 views
14

Estoy haciendo una aplicación de la Tienda Windows en C# y tengo una normal TextBlock con un enlace dentro de ella. Y todo lo que quiero es hacer que el cursor se convierta en una mano cuando pasa por encima del bloque de texto, pero a diferencia de las aplicaciones WPF, no existe el código Cursor. Sé que es una clase CoreCursor en Windows.UI.Core. ¿Debo usarlo de alguna manera?Cambie el cursor en Windows Store Apps

Respuesta

27
Window.Current.CoreWindow.PointerCursor = 
    new Windows.UI.Core.CoreCursor(Windows.UI.Core.CoreCursorType.Hand, 1); 
+4

En caso de que las personas no puedan encontrar el espacio de nombres: 'Windows.UI.Xaml.Window.Current.CoreWindow.PointerCursor = new Windows.UI.Core.CoreCursor (Windows.UI.Core.CoreCursorType.Hand, 1) ; ' –

+0

no hay forma de hacerlo a través de xaml –

0

WinRT XAML Toolkit tiene una propiedad asociada que funciona casi igual que la propiedad Cursor en WPF en el que se establece un cursor para un elemento y así, cuando el cursor del ratón pasa por encima de ese elemento - el cursor cambia a lo que especifica la propiedad y cuando deja límites de control - restaura el cursor anterior. En realidad, hay dos propiedades - uno llamado FrameworkElementExtensions.SystemCursor que toma cualquier cursor estándar de la CoreCursorType enum, que sólo tiene que utilizar al igual que en this sample page - establecen

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

El otro - FrameworkElementExtensions.Cursor le permite configurar cualquier encargo del cursor, pero creo Debería configurarlo en código detrás como FrameworkElementExtensions.SetCursor(myElement, myCursor); o enlazar a una propiedad del cursor establecida en otro lugar.

También puede usar cursores personalizados. Debe definir un cursor en una biblioteca de recursos nativos como se describe en this article y luego debería poder establecerlos globalmente estableciendo la propiedad Window.Current.CoreWindow.PointerCursor o con una propiedad adjunta como mi FrameworkElementExtensions.Cursor.

Cuestiones relacionadas