Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/mercurial/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xamarin.android 如何将actionbar与Xamarin和MvvmCross一起使用_Xamarin.android_Mvvmcross - Fatal编程技术网

Xamarin.android 如何将actionbar与Xamarin和MvvmCross一起使用

Xamarin.android 如何将actionbar与Xamarin和MvvmCross一起使用,xamarin.android,mvvmcross,Xamarin.android,Mvvmcross,我看到Xamarin最近作为组件发布 我想在我的应用程序中与MvvmCross一起使用它,但我遇到了困难,所以我转向谷歌,找到了这个教程 但我不明白如何正确使用MvvmCross。如何将其中的按钮绑定到ICommands等?我可以将整个actionbar指定为ViewModel并绑定到它吗?如果是,怎么做?无法使用MvvmCross将ActionBar绑定到ICommands。但是,当按下ActionBar上的按钮时,您可以使用一个简单的技巧从活动中调用ICommands public ov

我看到Xamarin最近作为组件发布

我想在我的应用程序中与MvvmCross一起使用它,但我遇到了困难,所以我转向谷歌,找到了这个教程


但我不明白如何正确使用MvvmCross。如何将其中的按钮绑定到ICommands等?我可以将整个actionbar指定为ViewModel并绑定到它吗?如果是,怎么做?

无法使用MvvmCross将ActionBar绑定到ICommands。但是,当按下ActionBar上的按钮时,您可以使用一个简单的技巧从活动中调用ICommands

public override bool OnCreateOptionsMenu(IMenu menu)
{
    this.MenuInflater.Inflate(Resource.Menu.QuoteDetails, menu);

    m_MenuItem_EditQuote = menu.FindItem(Resource.Id.menu_EditQuote);
    m_MenuItem_EditQuote.SetVisible(ViewModel.CanEdit);

    return true;
}

public override bool OnOptionsItemSelected(IMenuItem item)
{
    switch (item.ItemId)
    {

        case Resource.Id.menu_EditQuote:

            ViewModel.EditQuoteCommand.Execute(null);
            return true;

        case Resource.Id.menu_ViewQuote:

            ViewModel.DownloadQuoteCommand.Execute(null);
            return true;

        case Resource.Id.menu_EmailQuote:

            ViewModel.EmailQuoteCommand.Execute(null);
            return true;

        default:
            return base.OnOptionsItemSelected(item);
    }
}