Растянуть область действия элементов ListBox на всю ширину ListBox? Стиль ListBox устанавливается неявно через тему

Я поискал ответ по этому поводу, но потенциальные дубликаты больше связаны с презентацией, чем с взаимодействием.

У меня есть базовый список, и содержимое каждого элемента представляет собой простую строку.

Сам ListBox растягивается, чтобы заполнить его контейнер сетки, но каждая область попадания ListBoxItem не отражает ширину ListBox. Похоже, что область попадания (область контакта указателя) для каждого элемента - это только ширина текстового содержимого. Как сделать это растягивание по всей длине, независимо от размера текста.

Я установил HorizontalContentAlignment на Stretch, но это не решает мою проблему. Еще я предполагаю, что контент на самом деле растягивается, но фон невидим и поэтому не захватывает указатель мыши.

<ListBox 
    Grid.Row="1"
    x:Name="ProjectsListBox" 
    DisplayMemberPath="Name"
    ItemsSource="{Binding Path=Projects}" 
    SelectedItem="{Binding Path=SelectedProject}"
    HorizontalContentAlignment="Stretch"/>

XAML довольно прямолинейен в этом отношении. Если я наведу курсор мыши на текст в одном из элементов, то станет активной вся ширина элемента. Думаю, мне просто нужно знать, как создать невидимый интерактивный фон.

12
задан Nicholas 8 January 2011 в 15:06
поделиться