如何以编程方式更改某些自定义TreeView图标的颜色? C#Winforms

时间:2019-04-03 22:35:51

标签: c# winforms treeview

我想知道如何更改自定义加号和减号图标的颜色。 我在开发软件时是为了使其外观更好,我想更改TreeView图标。这是我正在使用的代码:

   [DllImport("uxtheme.dll", ExactSpelling = true, CharSet = CharSet.Unicode)]
    private static extern int SetWindowTheme(IntPtr hwnd, string pszSubAppName, string pszSubIdList);
    public static void SetTreeViewTheme(IntPtr treeHandle)
    {
        SetWindowTheme(treeHandle, "explorer", null);
    }

要选择TreeView控件,代码为SetTreeViewTheme(treeView1.Handle);,该代码的结果如下所示:

https://i.stack.imgur.com/FNzqK.png

这正是我想要的,但是,代码的工作方式是选择了较深版本的TreeView背景色,这就是问题所在。我的TreeView的颜色已经很暗了,因此根据我的TreeView背景色,代码使图标变暗了,结果看起来很暗,

https://i.stack.imgur.com/ELuoY.png

很难看清/阅读,所以我想知道是否有一种方法可以控制图标的颜色,以便可以对其进行更改,从而更易于查看/阅读。

0 个答案:

没有答案