树视图 - 如何从数据绑定设置父节点



我使用数据集从数据库中填充了树列表。

tree.ItemsSource = new _e_shopping24CategoriesParentTableAdapters.CategoriesTableAdapter().GetData();

数据集中有 3 个表:

  1. IDCategory
  2. 名字
  3. 父母

我将 DisplayMemberPath 设置为 Name。但是我找不到任何将父节点设置为树的参数。

所以我的树视图看起来像这样:

  • 饮料
  • 百事可乐
  • 口可乐
  • 汽车
  • 斯巴鲁
  • 奔驰

但我想要:

  1. 饮料
    1. 百事可乐
    2. 可口可乐
  2. 汽车
    1. 斯巴鲁
    2. 奔驰

谁能告诉我如何解决这个问题?嘶嘶不已。

我相信

您需要创建和填充数据结构,其中每个类别都包含一个项目列表:

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。

最新更新