我目前正在第一次尝试 C# 和 WPF。
我有一个带有两个选项卡的窗口,tabA
and tabB
。每个选项卡都有一个列表框(它们几乎相同),tabA
has listboxA
and tabB
has listboxB
。当选择列表框中的某个项目时,会显示有关该项目的一些信息,以便我知道它已被选择。
在某个事件上E
,我想要一个项目listboxA
or listboxB
突出显示并选择哪一个,由我的应用程序中的逻辑决定。
场景A是我目前处于tabA
. When E
发生时,其中的一项listboxA
被选中。我打电话listboxA.Focus()
, 进而listboxA.SelectedItem = item
。这很好用。item
被选中,因此会显示有关该项目的信息,并且该项目在列表中突出显示。
场景 B,我遇到的问题是,我目前处于tabA
. When E
发生时,其中的一项listboxB
被选中。我打电话tabControl.SelectedItem = tabB
切换选项卡,效果很好。与场景 A 一样,我调用listboxB.Focus()
进而listboxB.SelectedItem = item
。该项目已被选中,因为显示了有关该项目的信息,但是,事情是这样的:该项目未在列表框中突出显示.
当从以下位置更改时也会发生这种情况tabB
to tabA
。当我更改选项卡时总是会发生这种情况,但如果我留在同一个选项卡中,突出显示效果很好。
有谁知道除了调用之外,我是否还需要做其他事情才能在更改选项卡后为列表框提供焦点Focus()
?
WPF 具有焦点范围,列表框可能会在其范围内获得焦点,但范围本身可能不会获得焦点。或者,列表框可以具有焦点,但它包含需要聚焦的项目的单独范围。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)