Quantcast
Channel: Daniel Rozo » Windows 8
Viewing all articles
Browse latest Browse all 4

Cómo hacer que PointerPressed y PointerReleased funcionen en un botón de Windows 8 con C#

$
0
0

Hoy, haciendo algunas pruebas para el trabajo, tuve la necesidad de detectar sólo cuando el usuario está -activamente- presionando un botón. Es decir, no el evento click/tap ni un hold, sólo cuando tiene el click/dedo encima del botón mientras lo mantiene presionado. Esto se corresponde con los eventos PointerPressed y PointerReleased de los elementos visuales.

El problema, en Windows 8, está en que estos eventos no se disparan correctamente en un botón, directamente no se disparan. Algo disparatado, realmente, teniendo en cuenta que es un elemento visual que está hecho específicamente para ser presionado. Sea como fuere, puede haber dos soluciones:

  1. Si necesitas varios botones pulsados a la vez entonces, la solución no es usar un botón, sino un Grid, como bien me sugirió Adrián Fernández.
  2. Si sólo necesitas un botón a la vez, la solución pasa por hacerlo de una manera más rústica que sólo suscribiéndose al PointerPressed y PointerReleased, con el siguiente código:
BotonQueNecesites.AddHandler(PointerPressedEvent, new PointerEventHandler(BotonQueNecesites_PointerPressed), true);

Recuerda que puedes usar Ctrl+. sobre BotonQueNecesites_PointerPressed para poder crear el método con los argumentos correctos, sin necesidad de sabértelos de memoria. Así pues, el caso contrario par el PointerReleased resulta análogo:

BotonQueNecesites.AddHandler(PointerReleasedEvent, new PointerEventHandler(BotonQueNecesites_PointerReleased), true);

A partir de esto, sólo queda definir los handlers:

private void BotonQueNecesites_PointerReleased(object sender, PointerRoutedEventArgs e)
{
     output.Text = "Released";
}

private void BotonQueNecesites_PointerPressed(object sender, PointerRoutedEventArgs e)
{
     output.Text = "Pressed";
}

La entrada Cómo hacer que PointerPressed y PointerReleased funcionen en un botón de Windows 8 con C# aparece primero en Daniel Rozo.


Viewing all articles
Browse latest Browse all 4

Latest Images

Vimeo 10.7.0 by Vimeo.com, Inc.

Vimeo 10.7.0 by Vimeo.com, Inc.

HANGAD

HANGAD

MAKAKAALAM

MAKAKAALAM

Doodle Jump 3.11.30 by Lima Sky LLC

Doodle Jump 3.11.30 by Lima Sky LLC

Doodle Jump 3.11.30 by Lima Sky LLC

Doodle Jump 3.11.30 by Lima Sky LLC

Vimeo 10.6.2 by Vimeo.com, Inc.

Vimeo 10.6.2 by Vimeo.com, Inc.

Vimeo 10.6.1 by Vimeo.com, Inc.

Vimeo 10.6.1 by Vimeo.com, Inc.

Trending Articles


Mariquitas para colorear


Mandalas de flores para colorear


Dromedario para colorear


Good Morning Quotes


Love Quotes Tagalog


Ang sarap sa piling mo


Mga Tala sa “Unang Siglo ng Nobela sa Filipinas” (2009) ni Virgilio S. Almario


Dimasalang (1969) by Francisco V. Coching and Federico C. Javinal


Amarula African Gin


Ka longiing longsem kaba skhem bad kaba khlain ka pynlong kein ia ka...


“Wat ieit ia ka pyrthei!”


Tiburon para colorear


Dear Ex Quotes, Sakit Quotes


Long Distance Relationship Tagalog Love Quotes


Tropa Quotes


RE: Mutton Pies (mely)


Ang Nobela sa “From Darna to ZsaZsa Zaturnnah: Desire and Fantasy, Essays on...


EASY COME, EASY GO


Version 0.8.5 – Peb txhawb tus Lao heev


Hato lada ym dei namar ka jingpyrshah jong U JJM Nichols Roy (Bah Joy) ngin...





Latest Images

Vimeo 10.7.0 by Vimeo.com, Inc.

Vimeo 10.7.0 by Vimeo.com, Inc.

HANGAD

HANGAD

MAKAKAALAM

MAKAKAALAM

Doodle Jump 3.11.30 by Lima Sky LLC

Doodle Jump 3.11.30 by Lima Sky LLC

Doodle Jump 3.11.30 by Lima Sky LLC

Doodle Jump 3.11.30 by Lima Sky LLC

Vimeo 10.6.1 by Vimeo.com, Inc.

Vimeo 10.6.1 by Vimeo.com, Inc.