ToolbarItems.Add(new ToolbarItem("Save", null, () => (BindingContext as AddPersonViewModel).SaveCommand.Execute(null)));
,这就是我的工具栏项目代码。每次我按下Save btn然后Save命令。
我想在这个按钮上再加一个命令。我想每次我点击保存按钮1保存数据,然后导航到另一个页面!我怎么能做到呢?由于
(您只能将一个命令绑定到支持iccommand的XForms中的工具栏项或任何控件)
用另一个命令聚合两个命令
public ICommand SaveAndNavigateCommand {
get{
return new Command(()=>{
SaveCommand.Execute(null);
NavigateCommand.Execute(null);
});
}
}
用另一个命令聚合两个命令
导航命令取决于你使用的MVVM框架。如果不使用,则代码将如下所示:
class AddPersonViewModel{
readonly INavigation _navigation;
public AddPersonViewModel(INavigation navigation){
_navigation = navigation;
}
public ICommand NavigateCommand {
get{
return new Command(()=>{
_navigation.PushAsync(new ContentPage()); //Insert here page that you want navigate to
});
}
}
}
然后,当创建视图模型时,假设您在页面类中创建它:
class AddPersonPage: Page{
public AddPersonPage(){
InitializeComponent();
this.BindingContext = new AddPersonViewModel(this.Navigation);
}
}