Szukałem odpowiedzi na to pytanie, ale potencjalne duplikaty są bardziej związane z prezentacją niż z interakcją.Stretch ListBox Przedmioty uderzają obszar do pełnej szerokości ListBox? Styl ListBox jest ustawiony domyślnie poprzez motyw:
Mam podstawowe pole listy, a zawartość każdego elementu jest prostym łańcuchem znaków.
Sam ListBox jest rozciągnięty, aby wypełnić jego kontener siatki, ale każdy z hitarea ListBoxItem nie odzwierciedla szerokości ListBox. Wygląda na to, że hitarea (obszar kontaktu wskaźnika) dla każdego elementu jest tylko szerokością treści tekstowej. Jak zrobić to rozciągnąć całą drogę, niezależnie od rozmiaru tekstu.
Ustawiłem HorizontalContentAlignment na Stretch, ale to nie rozwiązuje mojego problemu. Moim jedynym przypuszczeniem jest to, że treść faktycznie sięga, ale tło jest niewidoczne i nie przechwytuje wskaźnika myszy.
<ListBox
Grid.Row="1"
x:Name="ProjectsListBox"
DisplayMemberPath="Name"
ItemsSource="{Binding Path=Projects}"
SelectedItem="{Binding Path=SelectedProject}"
HorizontalContentAlignment="Stretch"/>
XAML jest dość prosty w tej kwestii. Jeśli przesuję wskaźnik myszy nad tekstem w jednym z elementów, wówczas cała szerokość elementu staje się aktywna. Chyba muszę wiedzieć, jak stworzyć interaktywne tło, które jest niewidoczne.
Proszę zaksięgować swój XAML. – Zamboni