我目前正在第一次尝试 C# 和 WPF。
我有一个带有两个选项卡的窗口,tabA
并且tabB
. 每个选项卡都有一个列表框(它们几乎相同),tabA
haslistboxA
和tabB
has listboxB
。When an item in a list box is selected, some information about the item is shown, so that I know that it is selected.
在某个事件E
上,我希望突出显示或选择一个项目listboxA
,listboxB
这取决于我的应用程序中的逻辑。
情景 A 是我目前在tabA
. 发生时E
,将选择一个项目listboxA
。我打电话listboxA.Focus()
,然后listboxA.SelectedItem = item
。这工作正常。item
被选中,因此显示有关该项目的信息,并且该项目在列表中突出显示。
我遇到问题的场景 B 是我目前在tabA
. 发生时E
,将选择一个项目。我打电话来切换标签,效果很好。与场景 A 一样,我调用然后. 该项目被选中,因为显示了有关该项目的信息,但是,事情是这样的:该项目未在列表框中突出显示。listboxB
tabControl.SelectedItem = tabB
listboxB.Focus()
listboxB.SelectedItem = item
tabB
从 更改为时也会发生这种情况tabA
。当我更改选项卡时总是会发生这种情况,但如果我留在同一个选项卡中,突出显示效果很好。
有谁知道在更改选项卡后我是否需要做任何其他事情来使列表框成为焦点,除了调用Focus()
?