WPF - 绑定到dll函数

时间:2013-04-13 14:08:43

标签: c# wpf data-binding dll

如何绑定ListBox,显示ObservableCollection中某些dll中某个函数返回的所有项?

我在名为FilesManager的dll singltone类和函数Instance()中返回指向此类的指针。然后我有一个名为GetFiles()的函数,它返回包含所有文件名的ObservableCollection

我在xml中有一个ListBox,我想将它ItemsSource属性绑定到
FilesManager.Instance().GetFiles(),我该怎么做?

1 个答案:

答案 0 :(得分:2)

您应该考虑使用MVVM设计模式。在这种情况下,您的视图模型上将有一个公开FilesManager.Instance().GetFiles()集合的属性,您的视图将绑定到此属性。

public class MyViewModel
{
    public MyViewModel()
    {
        this.Files = FilesManager.Instance().GetFiles();
    }

    public XXX Files { get; private set; }
}

<ListBox ItemsSource="{Binding Files}" ... />

如果您想在构建后更改Files引用,则需要实现INotifyPropertyChanged来更新UI。