如何使特定的树节点在树视图中显示为文件夹?我正在使用数据库中的表创建动态树视图,并基于一列,即 NodeType 具有值(1 或 2),我希望它显示为文件夹或普通树节点。
伪代码会更有益。
提前致谢!
您可以将文件夹图像放在 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;
}