WPF: Правильно храня объект в TreeViewItem

использовать row_number (), который поддерживается большинством дБм

  with cte as
   ( select p.Pname,e.Ename,e.salary
    ,row_number()over(partition by pe.Projno order by e.salaray desc) rn
     from Proj_Emp pe join Proj p on pe.Projno=p.Projno
                       join Emp e on e.Empno=pe.Empno
) select * from cte where rn=1
5
задан Andreas Grech 5 April 2009 в 12:15
поделиться

1 ответ

"Надлежащий" путь состоит в том, чтобы просто добавить object к TreeView(или TreeViewItem) Items набор и использование a HierarchicalDataTemplate чтобы управлять, как объект представляется:

Person.cs:

public class Person
{
    private readonly ICollection<Person> _children = new ObservableCollection<Person>();

    public string Name { get; set; }

    public ICollection<Person> Children
    {
        get
        {
            return _children;
        }
    }
}

Window1.xaml.cs:

public Window1()
{
    InitializeComponent();

    var people = new List<Person>();
    var kent = new Person() { Name = "Kent" };
    kent.Children.Add(new Person() { Name = "Tempany" });
    people.Add(kent);
    _treeView.ItemsSource = people;
}

Window1.xaml:

<TreeView x:Name="_treeView">
    <TreeView.Resources>
        <HierarchicalDataTemplate DataType="{x:Type local:Person}" ItemsSource="{Binding Children}">
            <TextBlock Text="{Binding Name}"/>
        </HierarchicalDataTemplate>
    </TreeView.Resources>
</TreeView>
7
ответ дан 14 December 2019 в 04:47
поделиться
Другие вопросы по тегам:

Похожие вопросы: