ListBox.SetBinding - ItemSourceProperty 不起作用

本文关键字:不起作用 ItemSourceProperty SetBinding ListBox | 更新日期: 2023-09-27 18:33:02

我在学校项目中使用 WPF。一切都很好,直到我尝试将列表绑定到列表框。我写了一些示例代码,其中出现了问题。

    public MainWindow()
    {
        InitializeComponent();
        //make a new source
        myDataObject = new TestClass(DateTime.Now);
        Binding myBinding = new Binding("Students");
        myBinding.Source = myDataObject.Students;
        List<TestStudent> students = new List<TestStudent>();
        for (int i = 0; i < 10; i++)
        {
            students.Add(new TestStudent("name" + i, "surename" + i));
        }
        myDataObject.Students = students;
        myList.ItemsSource = myDataObject.Student; //this works
        myList.SetBinding(ListBox.ItemsSourceProperty, myBinding); //this doesn't show anything
    }

我已经正确实现了INotifyPropertyChanged接口。当我以这种方式将一些数据添加到任何 TextBox.Text 时,它工作正常。但是当我尝试将列表绑定到ListBox.ItemsSource时,结果是空框。为什么会这样?提前感谢您的任何建议。

ListBox.SetBinding - ItemSourceProperty 不起作用

绑定

Source应该是myDataObject,而不是myDataObject.Students。如果将myDataObject.Students设置为源,则ListBox将尝试绑定到不存在的myDataObject.Students.Students