各位好:小弟应用WPF碰到这样一个问题,首先在一个窗体类中声明了一个ObservableCollection<T>变量,并将它与DataGrid控件绑定,并且是Mode是TwoWay。public partial class MainWindow : Window
{
private ObservableCollection<T> testData = new ObservableCollection<T>();
...
DataGrid.DataContext = this.testData;
}
然后再把它作为参数传递给一个类,目的是在此类中对testData进行修改,让其在DataGrid显示出来public partial class MainWindow : Window
{
Transaction t = new Transaction(testData);
}public class Transaction
{
private ObservableCollection<T> _testData;
public Transaction(ObservableCollection<T> ttestData)
{
this._testData = ttestData;
} void f()
{
//对_testData进行修改...
}
}
通过监控变量发现窗体的testData的值确实发生了改变,但窗体的DataGrid没有变化,按说进过绑定后testData发生变化,控件该立即跟着变化才对,不知是什么原因,谢谢
{
private ObservableCollection<T> testData = new ObservableCollection<T>();
...
DataGrid.DataContext = this.testData;
}
然后再把它作为参数传递给一个类,目的是在此类中对testData进行修改,让其在DataGrid显示出来public partial class MainWindow : Window
{
Transaction t = new Transaction(testData);
}public class Transaction
{
private ObservableCollection<T> _testData;
public Transaction(ObservableCollection<T> ttestData)
{
this._testData = ttestData;
} void f()
{
//对_testData进行修改...
}
}
通过监控变量发现窗体的testData的值确实发生了改变,但窗体的DataGrid没有变化,按说进过绑定后testData发生变化,控件该立即跟着变化才对,不知是什么原因,谢谢
{
get { return _testData; }
set {
_testData = value;
RaisePropertyChanged("TestData");
}
}