我是WPF的新手。我有两个WPF C#项目,project1作为project2的引用。现在,project2的视图模型中有一个按钮,基于project2中存在的功能,我想禁用project1的视图模型中存在的按钮。我试过的:
Project2 ViewModelA:
button Enability
public bool _isStartEnabled = true;
public bool isStartEnabled
{
get { return _isStartEnabled; }
set
{
_isStartEnabled = value; RaisePropertyChanged("isStartEnabled");
}
}
然后project1 ViewModelB:
在project1中添加了project2的依赖关系后,ViewModelA的对象
ViewModelA VM_A;
public void funcA(){
VM_A._isStartEnabled = false;
}
但是当我放置断点时,_isStartEnabled方法未在ViewModelA中命中。
如果我做错了,如果有人可以帮忙,我会很好。
VM_A._isStartEnabled = false;
设置公共字段_isStartEnabled,它不会通过属性代码运行。这是一个很好的例子,说明为什么您应该never在C#中具有公共字段。
VM_A.isStartEnabled = false;
将工作(也遵循标准的C#命名,应称为“ IsStartEnabled”)