繁体   English   中英

如何使用Xaml将List绑定到WPF树视图?

[英]How to bind a List to a WPF treeview using Xaml?

我不知道如何将饮料列表绑定到WPF TreeView。

struct Drink
{
    public string Name { get; private set; }
    public int Popularity { get; private set; }

    public Drink ( string name, int popularity )
        : this ( )
    {
        this.Name = name;
        this.Popularity = popularity;
    }
}

List<Drink> coldDrinks = new List<Drink> ( ){
    new Drink ( "Water", 1 ),
    new Drink ( "Fanta", 2 ),
    new Drink ( "Sprite", 3 ),
    new Drink ( "Coke", 4 ),
    new Drink ( "Milk", 5 ) };
        }
    }

我在网上搜索过,比如看过这里 但这甚至意味着什么: ItemsSource="{x:Static local:TreeTest.BoatList}"

x:? static? local?

如何在xaml中的代码中指定集合?

通常,您需要确保为UserControl或Window设置DataContext ,然后将“coldDrinks”设置为DataContext类中定义为属性的集合。

如果你这样做,那么所需要的只是:

<TreeView ItemsSource="{Binding ColdDrinks}" />

我强烈建议您阅读WPF的数据绑定模型 充分理解这一点是使WPF真正令人愉快的关键。


请注意:鉴于您最近的问题以及您似乎正在采取的方法,您可能需要花一点时间来阅读MVVM和其他架构方法。 即使您不使用MVVM,描述它的文章也可以帮助您“思考”WPF术语,这将有很大帮助。

我写了一整篇关于从Windows窗体样式编程迁移到WPF的系列文章 它讨论了特定的WPF功能,以及为什么要改变你的想法,但是比大多数纯粹的“MVVM”文章介绍一些概念要慢一些。 如果有帮助,我会提到它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM