Как изменить тему компонента treeView на значки папок и файлов (тема Windows)

Я использую винформ. Я пытаюсь изменить тему компонента treeView на тему Windows, я видел, как @David Heffernan ответил на такой вопрос: Как получить собственный вид Windows для .NET TreeView? но я не совсем понимаю.

Я попробовал его ответ, и он наполовину работает: знак плюс/минус изменился на «треугольные» ручки узла, а синий обычный квадрат изменился на «пузырьковый» квадрат выбора, но он не меняет папки/файлы на значки Windows\Explorer. Что мне нужно добавить в его код, чтобы появились значки?

public class NativeTreeView : System.Windows.Forms.TreeView
{
    [DllImport("uxtheme.dll", CharSet = CharSet.Unicode)]
    private extern static int SetWindowTheme(IntPtr hWnd, string 
                                           pszSubAppName,string pszSubIdList);

    protected override void CreateHandle()
    {
        base.CreateHandle();
        SetWindowTheme(this.Handle, "explorer", null);
    }
}

нужный формат


person yoav raytsfeld    schedule 18.07.2019    source источник
comment
Если вы хотите воспроизвести Проводник, вы можете использовать встроенный в оболочку NamespaceTreecontrol : Test NamespaceTreecontrol Я использую его в C++ и VB.NET, но я могу преобразовать/выложить образец в C#, если вы не можете заставить его работать   -  person Castorix    schedule 18.07.2019
comment
Значки папок и файлов взяты из ImageList, которые вы установили для своего TreeView. Используйте любой значок, который вам нравится.   -  person Reza Aghaei    schedule 18.07.2019