C# WPF MVVM绑定x:名称未触发方法

C# WPF MVVM绑定x:名称未触发方法,c#,wpf,xaml,mvvm,caliburn.micro,C#,Wpf,Xaml,Mvvm,Caliburn.micro,我是WPF的新手,从周三开始尝试学习。我已经开始研究Caliburn.Micro和MVVM,并在应用程序中使用MaterialDesignInXAML Nuget包进行材料设计。由此,我创建了一个我想要使用的基本应用程序。此应用程序具有从侧面滑出的抽屉菜单。在这个菜单上,我有许多按钮。我希望能够单击这些按钮,并使用我创建的相关UserControl视图更新我的ContentControl。我在publicShellViewModel(){LoadHome();}方法中有LoadHome(),当我

我是WPF的新手,从周三开始尝试学习。我已经开始研究Caliburn.Micro和MVVM,并在应用程序中使用MaterialDesignInXAML Nuget包进行材料设计。由此,我创建了一个我想要使用的基本应用程序。此应用程序具有从侧面滑出的抽屉菜单。在这个菜单上,我有许多按钮。我希望能够单击这些按钮,并使用我创建的相关UserControl视图更新我的ContentControl。我在public
ShellViewModel(){LoadHome();}
方法中有
LoadHome()
,当我启动应用程序时会加载,但是单击菜单中的按钮不会更新contentcontrol,也不会触发任何断点,即使它使用的语法与其他人使用的语法相同。如果我从菜单上取下按钮并将它们放在后面,则按钮单击会按预期工作并更新contentcontrol

我的代码

ShellView.XAML

家
水滴清除工具
应用程序2
应用程序3
接近
**ShellViewModel.cs**
公共类ShellViewModel:导体
{
公共ShellViewModel()
{
LoadHome();
}
公共void LoadHome()
{
ActivateItem(新HomeViewModel());
}
公共void LoadBlobPurge()
{
ActivateItem(新BlobPurgeViewModel());
}
公共void LoadHowTo()
{
ActivateItem(新的HowToViewModel());
}
公共void LoadApp2()
{
}
公共void LoadApp3()
{
}
}

在使用Caliburn.Micro时,您可以尝试在按钮上使用以下语法。x:使用MaterialDesignInXAML时,名称绑定也使我失败

<Button cal:Message.Attach="[Event Click] = [Action LoadBlobPurge()]"
                    Margin="4" HorizontalAlignment="Center"
                        Style="{DynamicResource MaterialDesignFlatButton}"
                        materialDesign:RippleAssist.Feedback="{Binding RelativeSource= 
   {RelativeSource Self}, Path=Foreground, Converter={StaticResource BrushRoundConverter}}">                       
LOAD BLOB PURGE </Button>

加载水滴清除
我在这里找到了与此相关的更深入的答案:


按钮集的命令在哪里?请注意,人们将MVVM视为一种东西……因为人们可以在不需要其他工具的情况下推出自己的产品。我在我的博客上提供了一个例子。话虽如此,您可能有太多的事情在这个问题上进行正确的回答,需要更好地澄清它。请不要张贴所有的代码。只发布一个最低要求的部分来展示你的问题。考虑阅读这些话题,尤其是关于。
<Button cal:Message.Attach="[Event Click] = [Action LoadBlobPurge()]"
                    Margin="4" HorizontalAlignment="Center"
                        Style="{DynamicResource MaterialDesignFlatButton}"
                        materialDesign:RippleAssist.Feedback="{Binding RelativeSource= 
   {RelativeSource Self}, Path=Foreground, Converter={StaticResource BrushRoundConverter}}">                       
LOAD BLOB PURGE </Button>