先定义了一个类
public class TreeViewIconsItem : TreeViewItem
{
ImageSource iconSource;
TextBlock textBlock;
Image icon;
public TreeViewIconsItem()
{
StackPanel stack = new StackPanel();
// 设置StackPanel中的内容水平排列
stack.Orientation = Orientation.Horizontal;
Header = stack;
icon = new Image();
icon.Source = iconSource;
// 向StackPanel对象中添加一个图标对象
stack.Children.Add(icon);
// 创建用于添加文本信息的TextBlock对象
textBlock = new TextBlock();
// 向StackPanel对象中添加文本信息
stack.Children.Add(textBlock);
}
// 用于设置或获得节点中的图标对象
public ImageSource Icon
{
set
{
iconSource = value;
icon.Source = iconSource;
icon.Width = 16;
icon.Height = 16;
}
get
{
return iconSource;
}
}
// 用于设置或获得节点中的文本信息
public string HeaderText
{
set
{
textBlock.Text = value;
}
get
{
return textBlock.Text;
}
}
}
加载数据时:
TreeViewIconsItem tvii = new TreeViewIconsItem();
tvii.HeaderText = s;
TreeViewIconsItem tviiSub = new TreeViewIconsItem();
tviiSub.HeaderText = friend[1];
tvii.Items.Add(tviiSub);
treeview1.Items.Add(tvii);