J'écris une petite application en C# en utilisant Windows Forms. Je veux laisser mes utilisateurs copier et coller des données autour de l'application et il y a quelques contrôles personnalisés, par exemple un est un sélecteur de couleur.Copier/Coller dans Windows Forms avec des contrôles personnalisés
Certains des contrôles par défaut (au moins le TextBox) ont déjà une fonctionnalité de copier-coller. Je veux avoir la même chose avec mon sélecteur de couleur, et je veux aussi un menu 'Edition' en haut pour copier et coller.
En ce moment, je ne vois pas comment faire cela d'une manière agréable, mon amure actuelle est d'attraper le Ctrl + C et Ctrl + V commandes et les clics de menu et passer par une fonction qui utilise des appels Win32 pour trouver le contrôle ciblé, puis copier ou coller des données depuis ou vers le contrôle (avec une instruction if
en fonction du type de contrôle ciblé).
L'alternative semble être d'écrire la manipulation des touches dans chaque contrôle personnalisé, mais avec cette méthode, je ne suis pas sûr de savoir comment incorporer les fonctions du menu Edition.
Comment procéder de manière élégante ou plus «standard»?
N'essayez aussi le code * [.NET Framework - Couper, copier, coller le code] (http://www.eggheadcafe.com/software/aspnet/31867610/cut-copy-paste-code.aspx) *. –
* [Implémenter les commandes de menu "couper", "copier", "coller" dans l'application Windows Form] (http://social.msdn.microsoft.com/forums/fr-FR/netfxbcl/thread/4654a0e3-bb68-494e -a1f2-03884a72f7d6 /) * est similaire à votre problème. Il suffit de le vérifier .. –
Merci, cela semble surtout parler d'utiliser réellement le presse-papiers, que je n'ai aucun problème avec. Je ne savais pas à propos de TextBox.Copy() mais ce que j'essaie d'obtenir est un meilleur moyen de copier et coller dans les contrôles personnalisés, de sorte qu'ils répondent aux clics de clavier et de menu, mais sans beaucoup de déclarations if ou code de gestion de clé par contrôle. –