0

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

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

数据集中有3个表:

  1. ID类别
  2. 姓名
  3. 家长

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

所以我的 TreeView 看起来像这样:

  • 饮料
  • 百事可乐
  • 可口可乐
  • 汽车
  • 斯巴鲁
  • 梅赛德斯

但我想要:

  1. 饮料
    1. 百事可乐
    2. 可口可乐
  2. 汽车
    1. 斯巴鲁
    2. 梅赛德斯

谁能告诉我如何解决这个问题?非常感谢。

4

1 回答 1

0

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

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; }
}

然后,您将需要HierarchicalDataTemplate为您的TreeView. 有关如何创建一个的很好的示例,请参阅MSDN 。

于 2012-06-28T14:33:14.560 回答