【问题标题】:Navigation does not exist in current context Xamarin Comunity Toolkit Extensions当前上下文中不存在导航 Xamarin 社区工具包扩展
【发布时间】:2021-09-10 03:22:22
【问题描述】:

我想使用 xamarin 社区工具包扩展打开一个弹出窗口,但是当我尝试调用 导航它说它不存在,即使我包含了 xct.extensions。有 NavigationExtensions 但我不知道我应该作为第一个参数传递什么,它说我的 FilterPopup 类型不正确

using Xamarin.CommunityToolkit.Extensions;

namespace Appointments.ViewModels
{
    public class WallViewModel
    {
        public ObservableCollection<Stylist> Stylists { get; set; }

        public AsyncCommand OpenModalFiltersComand;
        public WallViewModel()
        {
            OpenModalFiltersComand = new AsyncCommand(OpenModalFilters);
        }

        async Task OpenModalFilters()
        {
            NavigationExtensions.ShowPopup(AppShell, FilterPopup);
            Navigation    // error
        }
    }
}

我的过滤器弹出窗口

namespace Appointments.Popups
{
    [XamlCompilation(XamlCompilationOptions.Compile)]
    public partial class FilterPopup : Popup
    {
        public FilterPopup()
        {
            InitializeComponent();
        }
    }
}

编辑--------- 我正在使用 shell 导航

【问题讨论】:

    标签: xamarin xamarin-community-toolkit


    【解决方案1】:

    ShowPopup 采用INavigationPopupBase实例NavigationPage 类型的属性,因此您的 VM 没有对它的引用。

    var nav = App.Current.MainPage.Navigation;
    var filter = new FilterPopup();
    
    NavigationExtensions.ShowPopup(nav, filter);
    

    【讨论】:

      猜你喜欢
      • 2021-10-12
      • 1970-01-01
      • 2021-09-21
      • 2021-07-25
      • 2021-10-08
      • 1970-01-01
      • 2021-05-06
      • 2021-09-23
      • 1970-01-01
      相关资源
      最近更新 更多