2009-05-14 6 views
2

Je développe une application dans WPF où un simple clic sur un élément va changer la vue en quelque chose d'autre. Le problème est que si l'utilisateur clique deux fois sur l'élément, le premier événement sera le simple clic qui ouvre l'autre vue et l'événement suivant sera le double clic sur la nouvelle vue. Ce double clic sur la nouvelle vue provoquera d'autres choses. Donc, la question est; Puis-je empêcher le double-clic de se produire après que l'événement de clic unique est arrivé à ma première vue? J'ai essayé de définir Handled = true sur le MouseButtonEventArgs dans la méthode du simple clic, mais cela ne fonctionne pas. L'autre vue obtiendra toujours le double clic et les choses au hasard arriveront toujours. Toute solution intelligente de mon problème là-bas?Arrêter le double clic après un seul clic

/Daniel

Répondre

1

RaymondChen est encore une fois une source précieuse.

Je suggère que vous lisiez le half second delay article lié pour des détails plus profonds mais que l'on montre comment le retard se manifeste à l'utilisateur.

+0

le problème avec cette solution est que pendant cette demi-seconde, l'utilisateur peut cliquer sur autre chose et puis deux choses vont se passer. La chose qui se passe après le premier clic sur le premier élément et la chose qui se passe après le deuxième clic sur le deuxième élément. Cela pourrait être résolu en définissant une sorte d'état dans un modèle pour l'application afin qu'elle sache qu'un premier élément a déjà été cliqué. Pas si belle solution cependant. –

+0

Si vos utilisateurs cliquent aussi vite sur plusieurs éléments différents de l'interface utilisateur, je crains que le code personnalisé et l'état stocké dans les endroits appropriés est la seule solution ... – ShuggyCoUk

Questions connexes