C# 如何避免选中项目时winforms树视图图标的更改
我正在一个小小的C#/Winforms应用程序中试用treeview。我已通过编程方式将ImageList分配给treeview,所有节点都会很好地显示其图标,但是当我单击一个节点时,其图标会发生变化(变为ImageList中的第一个图像)。如何使图标保持不变 顺便说一句:“SelectedImageIndex”设置为“(无)”,因为我真的不知道该设置为什么,因为节点的图像索引是不同的(我想是吧?) 更新:以下是应用程序的代码(我使用的是Visual Studio Express 2008):C# 如何避免选中项目时winforms树视图图标的更改,c#,winforms,treeview,C#,Winforms,Treeview,我正在一个小小的C#/Winforms应用程序中试用treeview。我已通过编程方式将ImageList分配给treeview,所有节点都会很好地显示其图标,但是当我单击一个节点时,其图标会发生变化(变为ImageList中的第一个图像)。如何使图标保持不变 顺便说一句:“SelectedImageIndex”设置为“(无)”,因为我真的不知道该设置为什么,因为节点的图像索引是不同的(我想是吧?) 更新:以下是应用程序的代码(我使用的是Visual Studio Express 2008):
只需将每个节点的SelectedImageIndex设置为与ImageIndex相同的值。因此,如果以编程方式创建节点:
TreeNode node = new TreeNode("My Node");
node.ImageIndex = 1;
node.SelectedImageIndex = 1;
或者您可以在构造器中指定整个批次:
TreeNode node = new TreeNode("My Node" ,1, 1);
如果要在设计时添加节点,则可以使用设计时编辑器执行相同的操作。您只需在节点级别而不是树视图级别设置SelectedImageIndex。您好,您还可以使用以下代码:
TreeNode Node = eventArgs.Node;
Node.SelectedImageKey = Node.ImageKey;
太好了,我知道这很简单,只是不知道去哪里找。谢谢(我不能在7分钟内接受此解决方案,我会在可能的情况下这样做)。
TreeNode Node = eventArgs.Node;
Node.SelectedImageKey = Node.ImageKey;