У меня есть список с табличкой данных для элементов. Проблема в том, что выбор элемента не работает, просто щелкнув в любом месте элемента; Я должен щелкнуть конкретный подэлемент, чтобы он действительно работал.
У моего предмета есть изображение и текстовый блок. Если я наведу курсор мыши на изображение или текстовый блок, я на самом деле вижу эффект наведения. Если я наведу указатель мыши на любое из «пустых» мест элемента, эффект парения не появится (и я не выделю, когда я нажму там).
Пример изображения: http://i33.tinypic.com/wvtleg .png
Если я нажму (или наведу курсор) на текст или изображение, оно будет работать нормально, но если я наведу указатель мыши на пустые области (я нарисовал красную линию вокруг него :)), список не реагирует.
Как получить, чтобы окно списка зависало / щелкало, чтобы ответить на щелчок в любом месте? в пространстве элемента?
Для полноты вот мой шаблон Listbox +:
Как указал Quartermeister, вам необходимо установить фон сетки, но вам также необходимо установить следующий стиль в своих ресурсах, поскольку для параметра HorizontalContentAlignment ListBoxItems по умолчанию установлено значение Left. (Недостаточно установить его в ListBox)
<ListBox.Resources>
<Style TargetType="{x:Type ListBoxItem}">
<Setter Property="HorizontalContentAlignment" Value="Stretch"/>
</Style>
</ListBox.Resources>
Похоже, ваш ListBoxItem не отвечает на проверку попадания . Попробуйте установить для фона сетки значение «Прозрачный»:
<Grid Background="Transparent">
Значение по умолчанию - null, что сделает элемент невидимым для проверки попадания. Установка прозрачного фона не повлияет на отображение, но позволит ударить по элементу. У стиля по умолчанию для ListBoxItem будет прозрачный фон, но вы могли изменить его стиль.