2010-02-17 11 views
2

Je veux ajouter un ContextMenuStrip Couper/Copier/Coller dans un RichTextBox, mais le problème est, je veux activer ou désactiver le bouton Coller par rapport à l'état actuel du presse-papiers de Windows .. signifie, si un texte est déjà copié, alors ce bouton devrait être activé, autrement désactivé.Vérifier le Presse-papiers pour les textes copiés

Une idée de comment je peux accomplir cela?

Répondre

1

Une note sur la fonction ContainsText (Clipboard.HasFormat (CF_TEXT) pour Delphi) ... Ce est sans aucun doute la seule bonne solution. Certaines applications passent à l'étape suivante et collent le texte du presse-papiers dans un tampon pour l'inspection - pour voir s'il contient quelque chose qu'elles recherchent, comme une URL (télécharger des "helpers" et des applications musicales comme cela), ou quelque chose d'autre qu'ils reconnaissent comme un scrap XML, du texte qui représenterait un contrôle dans un IDE (Delphi), etc. C'est BAD NEWS, car vous ne pouvez pas coller le contenu du presse-papiers sans causer des effets secondaires inattendus, tels que comme le déclenchement d'un message WM_RenderFormat dans les visualiseurs du Presse-papiers.