Quel est le nombre minimal d'étapes requises pour afficher une info-bulle lorsque le contrôle suivant est activé?Quelle est la manière la moins intrusive d'afficher l'info-bulle WPF sur le focus?
<TextBox ToolTip="Hello there!" ... />
J'ai essayé ce qui suit dans GotFocus
private void ..._GotFocus(object sender, RoutedEventArgs e) {
var element = (FrameworkElement)sender;
var tooltip = element.ToolTip;
if (!(tooltip is ToolTip)) {
tooltip = new ToolTip { Content = tooltip };
element.ToolTip = tooltip;
}
((ToolTip)tooltip).IsOpen = true;
}
Cependant, il semble ignorer la ToolTipService.Placement
pour ce contrôle et SystemParameters.ToolTipPopupAnimationKey
mis en place plus haut niveau.
Comment puis-je faire fonctionner et respecter tous les paramètres qui fonctionnent généralement pour les info-bulles (à l'exception de la synchronisation, évidemment)?
'ToolTipService .IsOpen' n'a malheureusement pas de setter disponible (par rapport à 'ToolTip.IsOpen'). –
Désolé, je ne devrais pas répondre aux questions quand je suis incertain et ne peux pas tester :) Que diriez-vous de ma révision - est-ce que cela aide? –
Cela fonctionnerait, oui, et c'est ma solution actuelle, mais je ne veux vraiment pas réécrire le TetBox lui-même. Je veux le faire dans une propriété attachée qui n'exigera pas l'utilisateur d'écrire l'info-bulle comme 'ToolTip'. Après tout, 'ToolTipService' ne fait pas. –