如何将ItemsControl.ItemsSource与XAML中的属性绑定? [英] How can I bind an ItemsControl.ItemsSource with a property in XAML?

查看:102
本文介绍了如何将ItemsControl.ItemsSource与XAML中的属性绑定?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个简单的窗口:

<Window x:Class="WinActivityManager"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
    <Grid>
        <ListView x:Name="lvItems" />
    </Grid>
</Window>

以及后面的相关代码:

public partial class WinActivityManager : Window
{
    private ObservableCollection<Activity> Activities { get; set; }

    public WinActivityManager()
    {
        Activities = new ObservableCollection<Activity>();
        InitializeComponent();
    }

    // Other code ...
}

如果我在窗口构造函数中编写以下绑定:

If I write the following binding in the window constructor :

lvItems.ItemsSource = Activities;

然后,当我在Activities中添加或删除元素时,我的ListView会自动更新.

then my ListView is automatically updated when I add or remove elements from Activities.

如何在XAML中编写绑定?
我试过了,但是没用:

How should I write the binding in XAML?
I tried this but it doesn't work:

<ListView x:Name="lvItems" ItemsSource="{Binding=Activities}" />

我如何在XAML中使其工作?

How do I make this work in XAML?

推荐答案

@JesseJames说的是真的,但还不够.

What @JesseJames says is true but not enough.

您必须放

private ObservableCollection<Activity> Activities { get; set; } 

public ObservableCollection<Activity> Activities { get; set; }

绑定应为:

<ListView x:Name="lvItems" ItemsSource="{Binding Path=Activities}" />

此致

这篇关于如何将ItemsControl.ItemsSource与XAML中的属性绑定?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆