У меня есть ListBox для нескольких элементов, и я должен иметь возможность щелкать по ним.Проблема в том, что событие SelectionChanged
не срабатывает, когда я нажимаю на текст элемента, только если я нажимаю на пустую часть.Я довольно новичок в WPF и не понимаю, почему это происходит.
XAML:
<ListBox Name="lBoxVouchers" BorderThickness="0" FontSize="15" SelectionChanged="lBoxVouchers_SelectionChanged">
<ListBox.ItemTemplate>
<DataTemplate>
<ListBoxItem Content="{Binding Name}" />
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
Обработчик:
private void lBoxVouchers_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
if (e.AddedItems.Count > 0)
MessageBox.Show("You just selected " + e.AddedItems[0]);
}
Ясвязывание списка объектов в коде через свойство lBoxVouchers.ItemsSource
, и они отображаются.Конечно, у каждого объекта есть свойство Name
.
Я пытался установить IsEnabled в ListBox и элементах, как в коде, так и в XAML, но это не помогает.Любые комментарии о лучших способах сделать это в WPF также приветствуются.