2

如何使特定的树节点在树视图中显示为文件夹?我正在使用数据库中的表创建动态树视图,并基于一列,即 NodeType 具有值(1 或 2),我希望它显示为文件夹或普通树节点。

伪代码会更有益。

期望的结果

提前致谢!

4

1 回答 1

4

您可以将文件夹图像放在 ImageList 控件中,并将 TreeView 控件的 ImageList 属性设置为此图像列表,并在创建节点时将该节点的 ImageIndex 设置为所需的索引。

    TreeNode tn = new TreeNode();
    if (imageShouldBeFolderImage)
        tn.ImageIndex = 0;

    // If you want to show another image for other cases, 
    // If you want no image ignore this else part
    else            
        tn.ImageIndex = 1;

更新:

如果选择一个节点将其图像更改为另一个不受欢迎的图像,这是由 TreeView 的 SelectedImageIndex 属性引起的,我建议将一个空图像添加到图像列表并设置节点 SelectedImageIndex。

TreeNode tn = new TreeNode();
if (imageShouldBeFolderImage)
{
    tn.ImageIndex = 0;
    tn.SelectedImageIndex = 0;
}
else
{            
    tn.ImageIndex = 1;//the index of the empty image
    tn.SelectedImageIndex = 1;
}
于 2013-08-26T09:26:19.870 回答