Je voudrais afficher une sorte de fenêtre lorsque je déplace la souris sur un objet ListView. Lorsque la souris quitte l'objet, la fenêtre devrait reposer à nouveau.
Quelqu'un a-t-il des conseils pour moi? P>
Bien sûr que cela n'a pas fonctionné de cette façon. De plus, la fenêtre doit aller à la souris et non quelque part. P>
Test: p> La fenêtre se ferme et s'ouvre en continu. P> < P> Comment obtenir une fenêtre (popup) pour être affichée uniquement lorsque la souris est déplacée sur un objet ListView? Pas partout dans la liste de liste. P> p>
3 Réponses :
Vous devez utiliser des contrôles d'info-bulle ou de pop up. Détails ici: P>
popups WPF - MSDN < / p>
Comprendre les différences et choisir le meilleur dont vous avez besoin. Les principales différences sont: p>
Les popups peuvent également être ouverts sur Hover. P>
Que ce qui se passe est que la boîte de dialogue s'ouvre qui provoque la souris de quitter la fenêtre de facturation qui provoque la fermeture de la boîte de dialogue. Ensuite, la souris rentre la fenêtre de facturation qui ouvre la boîte de dialogue, etc., etc. Ceci est en train de faire la boucle que vous voyez. p>
Je vous suggère de régler et d'avoir la boîte de dialogue fermer lorsque la souris quitte la boîte de dialogue. P>
Comment obtenir une fenêtre (popup) pour être affichée uniquement lorsque la souris est déplacée sur un objet ListView? Pas partout dans la liste de liste. Je souhaite afficher les informations des objets ListView dans la popup, avez-vous une idée?
Ma solution actuelle ressemble à ceci:
private void Show_PopupBillingPreview(object sender, MouseEventArgs e) { var listViewItem = e.Source as ListViewItem; var billing = listViewItem?.Content as Billing; PuBillingPreviewTitle.Text = billing?.BillingId.ToString(); PuBillingPreview.PlacementTarget = listViewItem; PuBillingPreview.Placement = PlacementMode.MousePoint; PuBillingPreview.IsOpen = true; } private void Hide_PopupBillingPreview(object sender, MouseEventArgs e) { if (PuBillingPreview.IsOpen) PuBillingPreview.IsOpen = false; }