树节点的图片要通过imageList 里面的图片才能获得,可以是键值,也可以是索引。我给你个例子。
稍微修改下,你就能用。你可以把Button里面代码包装成一个函数,就可以去添加了
控件就是界面的
后台代码如下:
using System
using System.Collections.Generic
using System.ComponentModel
using System.Data
using System.Diagnostics
using System.Drawing
using System.Linq
using System.Text
using System.Threading.Tasks
using System.Windows.Forms
namespace WindowsFormsApplication2
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent()
this.treeView1.ImageList = imagelist
}
ImageList imagelist = new ImageList()
private void button1_Click(object sender, EventArgs e)
{
try
{
string filename = this.textBox1.Text.Trim()
string key = this.textBox2.Text.Trim()
Image im = Image.FromFile(filename)
imagelist.Images.Add(key,im)
string name = this.textBox3.Text.Trim()
TreeNode tn = new TreeNode(name)
tn.ImageKey = key
this.treeView1.Nodes.Add(tn)
}
catch
{
}
}
private void Form1_Load(object sender, EventArgs e)
{
}
}
}
我也新手,正好刚用过这功能。如下:1. 到工具箱中拖一个imagelist控件,然后这个控件的属性栏中有个Images属性,点击这个属性右侧的按钮,就会出来一个对话框,点击“添加”,加入你想要的图片。
2. 添加图片到树形控件的代码如下,我为了演示,在formload事件中添加了几个节点,你根据你的实际,不用管。
private void Form1_Load(object sender, EventArgs e)
{
//下面初始化树形控件,给其添加一些节点
treeView1.Nodes.Add("节点1")
treeView1.Nodes.Add("节点2")
treeView1.Nodes[0].Nodes.Add("节点1.1")
treeView1.Nodes[0].Nodes.Add("节点1.2")
treeView1.Nodes[1].Nodes.Add("节点2.1")
treeView1.Nodes[1].Nodes.Add("节点2.2")
}
private void button1_Click(object sender, EventArgs e)
{
//下面来添加图片
treeView1.ImageList = imageList1//关联图片列表
foreach (TreeNode tn in treeView1.Nodes)
{
tn.ImageIndex = 0//表示其图片为图片列表中的第一个图片,若用第二个图片
//则tn.ImageIndex = 1依次类推
}
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)