另一个ContentControl中的WPF ContentControl未显示

本文关键字:ContentControl 显示 中的 另一个 WPF | 更新日期: 2023-09-27 18:29:00

我有一个带ContentControl的窗口,用来模拟运行良好的向导导航。为了重构一些代码,我以完全相同的方式在另一个窗口中使用的向导的一个UserControl中提取了一个表单。。。

我提取的UserControl在另一个窗口(不是向导窗口)上运行良好,但在向导中的UserControl中运行不好。。。我在这两种情况下都使用ContentControl。。。

我没有任何错误。。。我已经调试过了,在这两种情况下都调用了构造函数,但在向导内部,它并没有出现,只是这样。

来自简单窗口的代码是:

<Controls:MetroWindow x:Class="Desktop.Views.FilePropertiesViewModel">
  <Grid>
     <ScrollViewer VerticalScrollBarVisibility="Visible">
        <ContentControl x:Name="DocumentPropertyListViewModel" />
     </ScrollViewer>
  </Grid>
</Controls:MetroWindow>

在后面的代码中,在我的Window 的构造函数中

public DocumentPropertyListViewModel DocumentPropertyListViewModel { get; set; }
public FilePropertiesViewModel(){
   this.DocumentPropertyListViewModel = new DocumentPropertyListViewModel(File.Properties, false);
}

区别,正如所说的(作为参考,而不是真正的代码):

<ContentControl x:Name="Wizard"> <!-- Loading plenty of UserControls>
    <ContentControl x:Name="DocumentPropertyListViewModel" />  <!-- One of the UserControls has this -->
</ContentControl>

顺便说一句,我使用的是Caliburn.Micro,这就是为什么我使用ContentControl而不是普通的UserControl引用,我不知道如何用其他方式。。。

我在这里做错了什么?

另一个ContentControl中的WPF ContentControl未显示

您可以尝试一下。。。

<ContentControl x:Name="Wizard"> <ContentControl cm:View.Model="{Binding DocPropListViewProp}" /> </ContentControl>

其中DocPropListViewProp是主窗口中DocumentPropertyListViewModel类型的视图模型属性viewmodel

And in the code behind, in the constructor of my Window public DocumentPropertyListViewModel DocumentPropertyListViewModel { get; set; } public FilePropertiesViewModel(){ this.DocumentPropertyListViewModel = new DocumentPropertyListViewModel(File.Properties, false); } 仍然对上面的声明感到困扰,你提供的代码片段说你在代码后台有它,你是指ViewModel吗?

此外,您使用的IoC:MEF、SimpleContainer等容器是什么。。。?没有什么