我有一个非常简单的 WPF 测试应用程序,具有以下布局 ViewModels --DialogViewModel --GraphViewModel Views --DialogView --GraphView
DialogViewModel 有这个代码:
public class DialogViewModel : Screen {
#region Graph
private GraphViewModel m_gvmGraph;
public GraphViewModel Graph {
get {
if(m_gvmGraph == null) {
m_gvmGraph = new GraphViewModel();
}
return m_gvmGraph;
}
set {
if(m_gvmGraph != value) {
m_gvmGraph = value;
NotifyOfPropertyChange("Graph");
}
}
}
#endregion
public DialogViewModel() {
DisplayName = "Graph Dialog";
}
GraphViewModel 没有代码。
DialogView (UserControl) 看起来像这样:
d:DataContext="{d:DesignInstance Type=VMs:DialogViewModel, IsDesignTimeCreatable=True}"
Cal:Bind.AtDesignTime="True"
Width="1000" Height="600">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="200"/>
</Grid.ColumnDefinitions>
<ContentControl x:Name="Graph" />
</Grid>
GraphView (UserControl) 看起来像这样:
d:DataContext="{d:DesignInstance Type=VMs:GraphViewModel, IsDesignTimeCreatable=True}"
Cal:Bind.AtDesignTime="True"
d:DesignHeight="600" d:DesignWidth="800">
<Grid>
<Grid>
<Grid>
<TextBlock Text="Test" />
</Grid>
</Grid>
</Grid>
(我稍后需要嵌套网格 - 在这里没关系)。
这在运行时按预期工作(查看负载等)。所以我想(大多数)做得对。
但是在设计时(当我打开 GraphView.xaml 时,我得到“找不到 XXXX.ViewModels.GraphViewModel 的视图。”
我错过了什么?