xaml中的绑定源声明:类名的对象名?

时间:2013-09-11 07:53:36

标签: wpf xaml

这是我的代码:

<ListView x:Name="monitorEventList" ItemsSource="{Binding Source=MonitorEventCollection}">

实际上MonitorEventCollection是我定义的类名,我猜Binding Source应该是一个对象?我对吗?所以我想在代码初始化期间调用默认构造函数来从类创建对象。我在构造函数中设置了一个断点,但它没有被调用。

所以我很困惑。 xaml在绑定源中看到类名时如何运行?

2 个答案:

答案 0 :(得分:0)

您的对象需要具有该类的属性。该对象是在代码中创建的,在XAML中,您绑定到属性名称。所以:

public MonitorEventCollection Foo { ... }

绑定
<ListView x:Name="monitorEventList" ItemsSource="{Binding Path=Foo}">

答案 1 :(得分:0)

很抱歉,但你错了这是怎么回事。你可以使用这样的类,但不是这样。要了解如何以这种方式使用课程,请查看MSDN上的ObjectDataProvider Class页面。

要使用您的XAML示例,您需要稍微更改一下:

<ListView x:Name="monitorEventList" ItemsSource="{Binding Path=PropertyName}">

...其中PropertyName是来自类的实例的公共属性,该数据绑定为此(或父级)控件的DataContext。< / p>