原因:自定义控件的构造函数中需要初始化数据,XAML中直接引用用户控件时,设计模式下无法正常解析。
方案:在设计模式下不初始化数据,只在运行时调用初始化方法即可。
public ctor()
{
InitializeComponent();
if (System.ComponentModel.DesignerProperties.GetIsInDesignMode(this))
{
return;
}
InitOther();
}
private void InitOther()
{
_logger = LocalParking.LogFactory.CreateLogger(this.GetType().Name);
// TODO 其他参数初始化
}