始终在treeview和listview c#winform中选择/突出显示一个项目

时间:2016-04-19 09:10:27

标签: c# winforms listview treeview treenode

在MDI儿童表格中,

如何强制它以便始终选择/突出显示一个项目。

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

此外,我需要在listview上完成相同的方法

谢谢

1 个答案:

答案 0 :(得分:2)

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

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

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

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