我根据我在XamOutlookBar控件中单击的内容,使用<ContentControl>
标记交换内容。当我单击特定的OutlookBarGroup时,会向视图模型发送一个命令,以根据下面的代码块交换主窗口某个部分中的内容。
<ContentControl Content="{Binding CurrentPageViewModel}" Grid.Column="1" />
private void OnBarGroupClick(object barGroupKey){
if (barGroupKey.ToString() == "LogsBarGroupKey"){CurrentPageViewModel = _logsViewModel;}
因此,当点击栏组时,一切正常。其中一个条形组包含一棵树:
<TreeViewItem Header="Station Reporting" Name="StationReportingTree">
<TreeViewItem Name="VariousReportsItem" Header="REPORTS"/>
</TreeViewItem>
当我点击树中的VariousReportsItem时,会发送一个命令来交换内容,因为会有各种报告。
private void OnReportSelection(object treeViewItemName){
if (treeViewItemName != null){
if (treeViewItemName.ToString() == "VariousReportsItem"){
CurrentPageViewModel = _variousReportsViewModel;}}
}
所以我可以看到正在到达的OnReportsSelection方法,并且执行了CurrentPageViewModel = _variousReportsViewModel语句但是内容没有被换出,我不明白为什么。