我使用数据集从数据库中填充了树列表。
tree.ItemsSource = new _e_shopping24CategoriesParentTableAdapters.CategoriesTableAdapter().GetData();
数据集中有 3 个表:
- IDCategory
- 名字
- 父母
我将 DisplayMemberPath 设置为 Name。但是我找不到任何将父节点设置为树的参数。
所以我的树视图看起来像这样:
- 饮料
- 百事可乐 可
- 口可乐
- 汽车
- 斯巴鲁
- 奔驰
但我想要:
- 饮料
- 百事可乐
- 可口可乐
- 汽车
- 斯巴鲁
- 奔驰
谁能告诉我如何解决这个问题?嘶嘶不已。
我相信
您需要创建和填充数据结构,其中每个类别都包含一个项目列表:
public class Category
{
private readonly IList<Item> _items;
public Category()
{
_items = new List<Item>();
}
public int id { get; set; }
public string Name { get; set; }
public IList<Item> Items { get { return _items; } }
}
public class Item
{
public int id { get; set; }
public string Name { get; set; }
}
然后,您需要为您的TreeView
创建一个HierarchicalDataTemplate
。 有关如何创建一个的很好的例子,请参阅 MSDN。