var listBox = new ListBox(); listBox.Items.Add(1); listBox.Items.Add(2); listBox.Items.Add(3);
我想将焦点直接设置到列表框中的项目.
如果我这样做:
listBox.SelectedIndex = 0; listBox.Focus();
焦点设置为整个listBox,所以如果我按向下箭头将选择移动到下面的项目,我必须按两次箭头.第一次焦点从整个列表框跳到第一个项目,然后当我再次按箭头时,选择最终跳下来.
我想将焦点直接设置到第一个项目,所以我不必按箭头两次.
var listBoxItem = (ListBoxItem)listBox.ItemContainerGenerator.ContainerFromItem(listBox.SelectedItem); listBoxItem.Focus();