我有一个wpf列表框,显示一个文本框列表.当我单击文本框时,列表框选择不会更改.我必须单击TextBox旁边的以选择列表框项.是否需要为Textbox设置一些属性以将click事件转发到Listbox?
我们使用以下样式来设置PreviewGotKeyboardFocus,它处理TextBox控件和ComboBoxes的所有事件,如下所示:
然后我们在后面的代码中选择行:
protected void SelectCurrentItem(object sender, KeyboardFocusChangedEventArgs e) { ListViewItem item = (ListViewItem) sender; item.IsSelected = true; }
请务必使用适当的TargetType:ListViewItem,ListBoxItem或TreeViewItem.
我没有足够的代表发表评论,所以我发表评论作为答案.Grazer的上述解决方案不适用于您需要另一个控件Button
的情况SelectedItem
.这是因为按照Style Trigger
,IsKeyboardFocusWithin
当你点击它时变为假Button
,并且SelectedItem
变为空.