2010-06-02 16 views
5

Quelle est la meilleure façon de détecter Ctrl + V dans Silverlight?Comment détecter Ctrl + V dans Silverlight 4?

Je veux détecter Ctrl +V, pour obtenir l'accès au Presse-papiers.

+1

Voulez-vous intercepter globalement dans votre application le Ctrl + V? –

+0

Oui, c'est ce que je veux. – eflles

Répondre

0

EDIT

Pour capturer les CTRL +V globalement dans votre keypress application silverlight, se heurte à des difficultés. Les événements commencent au niveau des éléments enfants et descendent jusqu'aux contrôles parents. Il ne suffit donc pas de gérer KeyDown sur votre UIElement racine. Tout contrôle d'entrée de texte va d'abord obtenir l'événement et l'étouffer (en définissant Handled à true sur les arguments d'événement.) Je pense que si vous utilisez le pont DOM et abonnez un gestionnaire à l'événement KeyDown du navigateur pour l'élément silverlight lui-même. être en mesure d'y arriver d'abord, et même de le gérer complètement avant tout contrôle silverlight. Je pense que ce serait le moyen le plus facile d'intercepter CTRL + V, mais je ne l'ai pas testé.

Réponse originale

Vous devez utiliser la classe System.Windows.Clipboard.

  • GetText, qui extrait le texte de le presse-papiers
  • SetText, qui place texte sur le presse-papiers
  • ContainsText, qui indique si le presse-papiers contient actuellement le texte
+0

Le problème n'est pas d'accéder au presse-papiers, mais d'avoir un accès lorsque l'utilisateur utilise la fonction 'paste'. – eflles