var sharedViewModel=new SharedViewModel;
var viewModel1 = new ViewModel1(ref sharedViewModel)
var viewModel2 = new ViewModel2(ref sharedViewModel)
var viewModel3 = new ViewModel3(ref sharedViewModel)
如果我这样做会有区别吗
var viewModel1 = new ViewModel1(sharedViewModel)
var viewModel2 = new ViewModel2(sharedViewModel)
var viewModel3 = new ViewModel3(sharedViewModel)
ViewModel1,ViewModel2,ViewModel3
将对实例进行更改,在这种情况下和SharedViewModel
之间有区别吗?ref SharedViewModel
SharedViewModel
编辑:我的 ViewModel1、ViewModel2、ViewModel3 类中的内容示例
private SharedViewModel sharedvm;
Public ViewModel(SharedViewModel sharedViewModel)
{
sharedvm=sharedViewModel;
sharedvm.Collection.Add(new object());
}
private doSomthing()
{
sharedvm.Collection.RemoveAt(0);
}
现在的问题是,如果我将一个对象添加到我的sharedvm
收藏中,这是否意味着我正在向我的sharedViewModel
收藏添加一个对象?
如果我调用 doSomthing 方法,这些更改会反映在我的 sharedViewModel 上吗?