53 votes

Suppression du rectangle de mise au point sur un UserControl

J'ai un UserControl WPF avec Focusable="True". C'est le seul contrôle focalisable de la fenêtre.

Chaque fois que l'utilisateur appuie sur la touche Tab ou Alt (et surtout lorsqu'il fait Alt+Tab vers une autre application), mon UserControl acquiert une bordure en pointillés, c'est-à-dire un rectangle de mise au point. Ce rectangle reste ensuite en place jusqu'à la fermeture de la fenêtre.

Comment puis-je empêcher mon UserControl d'afficher ce rectangle de mise au point ?

Modifier

Il s'est avéré que le rectangle de mise au point n'était pas réellement affiché par mon UserControl. Mon UserControl focalisable contenait un autre UserControl qui, à son tour, contenait un ItemsControl, et c'est l'ItemsControl qui affichait le rectangle de focalisation.

Lorsque j'ai ajouté FocusVisualStyle="{x:Null}" au ItemsControl, le rectangle de mise au point a disparu.

71voto

sacha Points 2168

Si vous souhaitez ne pas afficher le rectangle de mise au point dans tous les cas, vous pouvez définir le FocusVisualStyle sur null.

<MyControl FocusVisualStyle="{x:Null}" />

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X