2010-10-14 21 views
-1

J'ai une application où j'utilise le presse-papiers pour les opérations de copier-coller. Pour la copie, je l'ai utilisé ce code:Comment effacer le contenu du presse-papiers en utilisant C#

Clipboard.Clear(); 
const byte VK_CONTROL = 0x11; 
keybd_event(VK_CONTROL, 0, 0, 0); 
keybd_event(0x43, 0, 0, 0); // Send the C key (43 is "C") 
keybd_event(0x43, 0, CONST_KEYEVENTF_KEYUP, 0); 
keybd_event(VK_CONTROL, 0, CONST_KEYEVENTF_KEYUP, 0); 

Mais il est de donner une erreur disant Impossible d'exécuter l'action du presse-papiers, et je suis incapable de le coller. Ça jette une exception.

Comment résoudre ce problème ou existe-t-il d'autres moyens de supprimer le contenu du Presse-papiers avant de le copier?

+0

Quelle exception est levée? –

+0

Impossible d'exécuter l'action du Presse-papiers – Dinesh

+0

Copie possible de * [Copier une chaîne vide à l'aide de Clipboard.SetText (string)] (http://stackoverflow.com/questions/11952960/copy-empty-string-using-clipboard-settextstring) * . –

Répondre

1

une raison quelconque vous n'utilisez pas

Clipboard.SetText("some string"); 
Clipboard.GetText(); 

MSDN article here

+0

Fondamentalement, j'essaie d'écraser la fonctionnalité CTRL + C dans mon application. c'est-à-dire que chaque fois que l'utilisateur appuie sur la touche de raccourci, le texte sélectionné doit être copié dans le presse-papier. Je ne sais pas ce que l'utilisateur va sélectionner, donc je ne peux pas utiliser setText. – Dinesh