我正在开发一个 Xamarin Forms 项目,其中我有一个屏幕分为 2 个部分,在一个视图中(比如 DashBoardView.Xaml)。一方面是有一些菜单选项,另一方面我想在单击菜单选项时加载不同的视图。具有注册(使用 XLABS MVVM)ViewFactory 的不同 ViewModel 的动态视图。
DashBoardView.Xaml
<Grid>
<Grid ColumnSpacing="0" RowSpacing="0" BackgroundColor="#404040">
// menu options having Command binded in DashboardViewModel
</Grid>
<ContentView Grid.Row="0" Grid.Column="1" BackgroundColor="White"
Content="{Binding DashboardDetailView}">
// views are binded with DashboardDetailView
// views are loaded dynamically to DashboardDetailView
(bindable property) using new Keyword when menu option
command is executed.
</ ContentView>
</Grid>
DashBoardViewModel.CS
private Command _dashboardMenuOptionCommand;
public Command DashboardMenuOptionCommand
{
get
{
return _ dashboardMenuOptionCommand?? (_dashboardMenuOptionCommand = new Command(() => {
DashboardDetailView = new ABCView();
}));
}
}
注意:ABCView 是使用 xLab 的 ViewFactory 向 ABCViewModel 注册的 Xaml 视图
问题:问题是 ABCView 正在加载,但没有发生用户交互,因为没有调用绑定到 ABCViewModel 中标签的命令。我做错了什么还是有更好或优化的方法来实现相同的目标?请找到随附的屏幕截图以供参考。 仪表板视图.xaml