【发布时间】:2015-01-28 12:42:22
【问题描述】:
我有一个黑白主题的 winforms 应用程序。我有一个树视图,其背景颜色设置为黑色,文本显示为白色。我已将 hotTracking 设置为 true。现在按照以下 MSDN 链接: https://msdn.microsoft.com/en-us/library/system.windows.forms.treeview.hottracking.aspx
当
HotTracking属性设置为true时,每个树节点标签 鼠标指针经过时呈现超链接的外观 超过它。下划线字体样式应用于字体和 ForeColor 设置为蓝色以使标签显示为链接。这 外观不受用户的互联网设置控制 操作系统。
似乎前景色被硬编码为蓝色。但这会在我的应用程序中产生问题,如随附的示例图像所示。由于这种蓝色,文本在黑色背景上变得不可读。虽然我可以禁用热跟踪,但客户需要它。有没有办法超越热跟踪的前景色。
这是我用于将主题应用于树视图的示例代码:
this.trvUsers.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.trvUsers.FullRowSelect = true;
this.trvUsers.HideSelection = false;
this.trvUsers.HotTracking = true;
this.trvUsers.ShowLines = false;
this.treeView1.BackColor = System.Drawing.Color.Black;
this.treeView1.ForeColor = System.Drawing.Color.White;
【问题讨论】:
-
您是否尝试过设置特定的 TreeNode back/Fore Color ?
-
我的要求是,当UI加载时,背景应该是黑色的,所有的节点都应该是白色的,这很好。但是在热跟踪期间,前景色变成蓝色,这使得它不可读。我应该能够在热跟踪时更改前景色。