我有两个视图MainView,我在其中添加了Tabs。
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
MVM mvm = new MVM();
private void AddInvoice_Click(object sender, RoutedEventArgs e)
{
string s = string.Format("Tab");
mvm.Items.Add(new VM(s));
this.DataContext = mvm;
}
}
DataGrid所在的TabView。
public partial class TabView : UserControl
{
MVM2 mvm = new MVM2();
public TabView()
{
InitializeComponent();
mvm.Invoice_Items.Add(new VM2());
dataGrid1.DataContext = mvm;
}
}
我有两个ObservableCollections。一个用于标签项目
class MVM : BVM
{
private ObservableCollection<VM> items = new ObservableCollection<VM>();
public ObservableCollection<VM> Items
{
get
{
return items;
}
set
{
items = value;
OnPropertyChanged("Items");
}
}
}
另一个用于dataGrid的行。
class MVM2:BVM
{
private ObservableCollection<VM2> invoice_items = new ObservableCollection<VM2>();
public ObservableCollection<VM2> Invoice_Items
{
get
{
return invoice_items;
}
set
{
invoice_items = value;
OnPropertyChanged("Invoice_Items");
}
}
}
当我添加新Tab时,我的dataGrid的数据保存在所有其他Tab中,但是我想在每个新Tab中重置dataGrid中的数据并将其保存在存储dataGrid的第三个ObservableCollection中。
我认为第三个ObservableCollection应该位于存储Tab项的ObservableCollection中。如我错了请纠正我。