[Winform] Copier-Coller sans formatage [Résolu]

Signaler
Messages postés
76
Date d'inscription
mercredi 12 janvier 2005
Statut
Membre
Dernière intervention
21 février 2008
-
Messages postés
4936
Date d'inscription
lundi 17 février 2003
Statut
Modérateur
Dernière intervention
14 février 2014
-
Bonjour,

Voila j'aimerais bien pouvoir supprimer le formattage dans mon clipboard (copier-coller) lorsque je copie dans un Richtextbox.

Car je mets moi des balises afin de structurer mon texte et j'aimerais que quand l'utilisateur fait un coller il n'est pas le formatting mais juste le texte pure sans balise.

Savez-vous comment intervenir sur le clipboard?

Le but est d'introduire ceci dans un Winform.

Es-ce que vous pensez que cela est réalisable? Si oui pouvez-vous me donner une ou plusieurs pistes?

Merci

Thierry

5 réponses

Messages postés
4936
Date d'inscription
lundi 17 février 2003
Statut
Modérateur
Dernière intervention
14 février 2014
34
Il suffit d'accéder au Clipboard sans utiliser la fonction interne du RichTextBox...

Ex :
string text = Clipboard.GetText(TextDataFormat.Text);

Sébastien FERRAND (blog)
Consultant Indépendant
[Microsoft Visual C# MVP]
Messages postés
76
Date d'inscription
mercredi 12 janvier 2005
Statut
Membre
Dernière intervention
21 février 2008

Bonjour et merci pour votre rapidité,

Je pense que je vais ajouter cette ligne dans le contextchange comme ca pas de souci de savoir si ca a été fait ou pas.

Mais bon je voudrais éviter de le refaire si c'est pas nécessaire...

Je teste déjà le clipboard si il est de type text et j'aimerais encore vérifier son format es-ce possible (RTF, XHTML,... )? et donc si  il n'est pas du type text le réatribuer.

Voici mon code:

if

(
Clipboard.ContainsText()==
true)
{

Clipboard.SetText(
Clipboard.GetText(
TextDataFormat.Text));
}

D'avance merci
Messages postés
4936
Date d'inscription
lundi 17 février 2003
Statut
Modérateur
Dernière intervention
14 février 2014
34
tu faire ceci :

if (
Clipboard.ContainsText(TextDataFormat.Text)
)
{

      Clipboard.SetText(
Clipboard.GetText(
TextDataFormat.Text));
}
else if (Clipboard.ContainsText(TextDataFormat.Rtf)
)
{

      Clipboard.SetText(
Clipboard.GetText(
TextDataFormat.Rtf));
}

...

Sébastien FERRAND (blog)
Consultant Indépendant
[Microsoft Visual C# MVP]
Messages postés
76
Date d'inscription
mercredi 12 janvier 2005
Statut
Membre
Dernière intervention
21 février 2008

En faite question bête... Merci

Au lieu de faire a chaque fois le test dans le contextchange j'ai décidé de m'inspirer de ton code :

http://www.csharpfr.com/codes/CLIPBOARDSPY-ESPIONNER-PRESSE-PAPIER-TOUT-SIMPLEMENT_35649.aspx

Afin de detecter quand le clipboard change et de faire mon événement qu'une fois.

Merci pour ton aide et ton source.

Bonne journée

++

Thierry
Messages postés
4936
Date d'inscription
lundi 17 février 2003
Statut
Modérateur
Dernière intervention
14 février 2014
34
De rien...
Bonne journée

Sébastien FERRAND (blog)
Consultant Indépendant
[Microsoft Visual C# MVP]