我的TreeView控件里有一个imagelist.
imagelist里有2张图片,索引分别是1,2.
我设定根结点的ImageIndex是1,然后子结点的ImageIndex是2.(假设只有一个根结点和一个子结点)
但是TreeView设置的ImageIndex是1.问题是:我选中子结点以后,它的图标变成了1的图标了.除非我不选它,子结点图标就是2.
大家有没有遇到过类似问题啊?算了,就写个简单的代码吧:private void Form1_Load(object sender, EventArgs e)
{
     this.treeView1.Nodes.Add("MyNode");
     this.treeView1.Nodes[0].Nodes.Add("ChildNode");//这里的ImageIndex是0,
     this.treeView1.Nodes[0].Nodes[0].ImageIndex = 1;//这是子结点,ImageIndex是1.但是我点一下它,它的ImageIndex就变成0了.
}

解决方案 »

  1.   

    你是不是设置了Nodes的SelectedImageIndex属性?
      

  2.   

    是啊.去不掉的.我选了一个imagelist1.然后那个属性里就自动出来了.删都不删不掉.
      

  3.   

    接分 看看selectimageindex属性
      

  4.   

    注意节点的状态: unSelected 、Selected你设定的图标应该是 未选中 的状态,再设置一下选中状态即可。
    this.treeView1.SelectedImageIndex =1 ;
      

  5.   

    路过接分,顺便问一下;private void Form1_Load(object sender, EventArgs e) 

        this.treeView1.Nodes.Add("MyNode"); 
        this.treeView1.Nodes[0].Nodes.Add("ChildNode");//这里的ImageIndex是0, 
        this.treeView1.Nodes[0].Nodes[0].ImageIndex = 1;//这是子结点,ImageIndex是1.但是我点一下它,它的ImageIndex就变成0了. 
    }
    //----
    你只加了一个子节点(动用Add方法一次)
    怎么会匹配两张图片呢?
      

  6.   

    中秋快乐!阖家欢乐!!!private void Form1_Load(object sender, EventArgs e) 

        this.treeView1.Nodes.Add("MyNode"); 
        this.treeView1.Nodes[0].Nodes.Add("ChildNode");//这里的ImageIndex是0, 
        this.treeView1.Nodes[0].Nodes[0].ImageIndex = 1;//这是子结点,ImageIndex是1.但是我点一下它,它的ImageIndex就变成0了. 

    //---- 
    你只加了一个子节点(动用Add方法一次) 
    怎么会匹配两张图片呢? 
      

  7.   

    还是属性没设置好吧SelectedImageIndex?
      

  8.   

    设定的图标应该是"未选中"的状态,再设置一下选中状态就可以了。 
    this.treeView1.SelectedImageIndex =1 ;