如何在DataGrid的ObservablCollection中添加dataGrid的ObservablCollection行,并在创建新Tab时重置dataGrid?

时间:2015-08-11 18:48:17

标签: c# wpf mvvm datagrid tabs

我有两个视图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中。如我错了请纠正我。

0 个答案:

没有答案