Comment puis-je ajouter une info-bulle à un contrôle?
J'ai quelques commandes que je voudrais afficher un ToolTip
pour quand le curseur de la souris sur elle. Comment puis-je faire cela? Je voudrais savoir comment le faire correctement dans le code, mais aussi dans le concepteur (Il y a un ToolTip
composant dans la boîte à outils, mais je ne suis pas tout à fait.. l'obtenir).
Je ne serais pas surpris si c'est un doublon, mais je ne peux que trouver des questions qui sont plus avancées, des scénarios spécifiques. Je voudrais connaître les principes de base.
- Double Possible de l'Affichage des info-bulle sur le survol d'un texte
- Connexes, et plus encore (s'applique .NET en général): stackoverflow.com/questions/168550/...
Vous devez vous connecter pour publier un commentaire.
Ici est votre article pour le faire avec le code
toolTip1
variable gouttes hors de portée?ToolTip
pour tous vos formes?this.button1.Tag = toolTip1
Glisser une info-bulle de contrôle de la boîte à outils sur votre formulaire. Vous n'avez pas vraiment besoin de lui donner toutes les propriétés autres que le nom. Ensuite, dans les propriétés de la commande que vous souhaitez avoir une info-bulle sur, look pour une nouvelle propriété avec le nom de l'info-bulle de contrôle que vous venez d'ajouter. Par défaut vous donner une info-bulle lorsque le curseur survole le contrôle.
L'astuce ici est que l'info-bulle de contrôle est un extender contrôle, ce qui signifie qu'il sera d'étendre l'ensemble de propriétés pour autres contrôles sur la forme. Les coulisses de cet objectif est atteint par la génération de code comme dans Svetlozar de réponse. Il y a d'autres commandes de travail de la même façon (comme le
HelpProvider
).Info-bulle en C# est très facile d'ajouter à presque tous les contrôles de l'INTERFACE utilisateur. Vous n'avez pas besoin d'ajouter de MouseHover événement pour cette.
C'est la façon de le faire-
Ajouter une info-bulle de l'objet de votre formulaire. Un objet est suffisant pour l'ensemble du formulaire.
ToolTip toolTip = new ToolTip();
Ajouter le contrôle de l'info-bulle avec le texte de votre choix.
toolTip.SetToolTip(Button1,"Click here");
J'ai fait de cette façon: il suffit d'ajouter l'événement à tout contrôle, définir le contrôle de la balise, et d'ajouter une condition à manipuler l'info-bulle pour le contrôle approprié ou l'étiquette.
Il suffit de s'abonner au contrôle de l'ToolTipTextNeeded événement, et de retour d'e.TooltipText, beaucoup plus simple.