C#如何在焦点丢失时确保所选节点保持突出显示
发布时间:2020-12-15 08:35:37 所属栏目:百科 来源:网络整理
导读:我更改了Treeview.HideSelection = false; 但是,如何确保当焦点丢失时所选项目仍然是原始选定颜色? 编辑: 我在表单上有一个列表视图,其中包含一系列流程事件.在同一表单上的Treeview旁边是一系列选项,用户完成这些选择以在列表视图中对事件进行分类.但是,
我更改了Treeview.HideSelection = false;
但是,如何确保当焦点丢失时所选项目仍然是原始选定颜色? 编辑: 我在表单上有一个列表视图,其中包含一系列流程事件.在同一表单上的Treeview旁边是一系列选项,用户完成这些选择以在列表视图中对事件进行分类.但是,当用户在其中一个分类控件上进行选择时,蓝色突出显示的选定Treeview项目将变为灰色.我希望找到定义这种颜色的属性,使其颜色为蓝色. 有什么建议. 更新: public partial class myTreeView : TreeView { TreeNode tn = null; public myTreeView() { InitializeComponent(); } protected override void OnAfterSelect(TreeViewEventArgs e) { if (tn != null) { tn.BackColor = this.BackColor; tn.ForeColor = this.ForeColor; } tn = e.Node; base.OnAfterSelect(e); } protected override void OnBeforeSelect(TreeViewCancelEventArgs e) { e.Node.BackColor = Color.Green; e.Node.ForeColor = Color.White; base.OnBeforeSelect(e); } protected override void OnGotFocus(System.EventArgs e) { base.OnGotFocus(e); } protected override void OnLostFocus(System.EventArgs e) { if (tn != null) { tn.BackColor = Color.Green; tn.ForeColor = Color.White; } // tn.BackColor = Color.Red; base.OnLostFocus(e); } } 解决方法
将ListView.HideSelection设置为true意味着当焦点丢失时,它将隐藏选择.通过将HideSelection设置为false,所选项目仍将具有显示选择了哪个项目的颜色指示器.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |