我在ViewModel类的默认构造中放了一些数据访问逻辑。 但是,每当尝试打开xaml设计器窗口时,visualstudio都会尝试执行ViewModel的默认构造函数,然后从此弹出错误窗口。
如何防止在ViewModel类中执行默认构造函数。 我知道GetIsInDesignModel()方法可以在codebehind类中执行此操作,但是不可能在ViewModel类中使用,因为此方法的参数需要DependencyObject类型。
任何解决方案吗?
答案 0 :(得分:4)
您可以使用
在ViewModel代码中静态访问IsInDesignMode属性(bool)DependencyPropertyDescriptor.FromProperty(
DesignerProperties.IsInDesignModeProperty,
typeof(DependencyObject)
).Metadata.DefaultValue;