C# 无法在构造函数内设置自己的树节点的ImageIndex

C# 无法在构造函数内设置自己的树节点的ImageIndex,c#,.net,treeview,treenode,C#,.net,Treeview,Treenode,我得到了两个类,一个来自TreeView,另一个来自TreeNode: using System; using System.Collections.Generic; using System.ComponentModel; using System.Drawing; using System.Data; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms;

我得到了两个类,一个来自TreeView,另一个来自TreeNode:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.IO;
using System.Resources;
using ExtendedTreeView.Properties;

namespace ExtendedTreeView
{
    public partial class ExtendedTreeView : System.Windows.Forms.TreeView
    {
        public ExtendedTreeView()
        {
            InitializeComponent();

            ImageList il = new ImageList();
            il.Images.Add("blank", Resources.favicon);
            il.Images.Add("application", Resources.application);
            il.Images.Add("computer", Resources.computer);
            il.Images.Add("network", Resources.network);
            il.Images.Add("session", Resources.session);
            il.Images.Add("user", Resources.user);
            il.Images.Add("usergroup", Resources.usergroup);

            this.ImageList = il;
        }
    }
}
以及:

但是树节点图标停留在索引0处。所以我的问题是,我无法设置计算机树节点的ImageIndex属性。
我做错了什么?

不确定。您可以尝试设置ImageKey()?我忘了提到我也尝试设置ImageKey属性。但这也不起作用。别忘了设置SelectedImageIndex属性,它现在可能是0。只需输入echo Hans即可。您还必须设置SelectedImageIndex。我以前也有过类似的问题。如果这不能解决问题,请告诉我们。就是这样!我只需要正确设置SelectedImageIndex。谢谢大家:)
using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Net;
using System.Net.NetworkInformation;
using System.Management;
using System.Windows.Forms;
using Cassia;
using System.Security.Principal;

namespace GUI
{
    public class Computer : System.Windows.Forms.TreeNode, IDictionaryEnumerator
    {
        private DictionaryEntry nodeEntry;
        private IEnumerator enumerator;

        public String computerName { get; private set; }

        public Computer(String computername)
        {
        this.computerName = computername;
            enumerator = base.Nodes.GetEnumerator();
            this.Text = this.ipAdressen[0].ToString() + " - " + this.computerName;
            this.ImageIndex = 2;
        }


        #region TreeNodeStuff
        public string NodeKey
        {
            get
            {
                return nodeEntry.Key.ToString();
            }

            set
            {
                nodeEntry.Key = value;
            }
        }

        public object NodeValue
        {
            get
            {
                return nodeEntry.Value;
            }

            set
            {
                nodeEntry.Value = value;
            }
        }

        public DictionaryEntry Entry
        {
            get
            {
                return nodeEntry;
            }
        }

        public bool MoveNext()
        {
            bool Success;
            Success = enumerator.MoveNext();
            return Success;
        }

        public object Current
        {
            get
            {
                return enumerator.Current;
            }
        }

        public object Key
        {
            get
            {
                return nodeEntry.Key;
            }
        }

        public object Value
        {
            get
            {
                return nodeEntry.Value;
            }
        }

        public void Reset()
        {
            enumerator.Reset();
        }
        #endregion
    }
}