在 treeview 和 listview c# winform 中总是有一项是 selected/highlighted

always one item is selected/highlighted in treeview and listview c# winform

在 MDI 子窗体中,

我怎样才能强制它使一项总是 selected/highlighted。

当我加载表单时,我希望看到树视图的第一个节点被突出显示,即使我导航离开即使用其他子表单,也应该始终突出显示一个项目。

另外,同样的方法我需要在列表视图上完成

谢谢

虽然需要设置 HideSelection 属性 以在控件未获得焦点时突出显示所选项目,但这还不够。项目(节点)获得焦点但未被选中的情况是完全有效的,并且可以由用户实现(并且只有在控件处于活动状态时才会标记获得焦点但未被选中的项目)。

然而,您可以使用一个简单的技巧来强制始终选择焦点项目(因此即使在控件未处于活动状态时也可见):

private void listView_ItemSelectionChanged(object sender, ListViewItemSelectionChangedEventArgs e)
{
    if (e.Item.Focused)
        e.Item.Selected = true;
}

另外不要忘记在填充控件后将焦点放在控件的第一个项目(节点)上,这样一个项目(节点)将始终突出显示。