使用App.current.MainPage

时间:2019-05-03 15:30:53

标签: c# xamarin.forms navigation master-detail

登录时,我正在设置插件中获取并存储一些属性(例如用户名,创建日期和电子邮件),包括已登录用户的图像路径(字符串类型)属性,并将其用作主详细信息页面中的图像元素。当我转到其他页面并希望使用Application.Current.MainPage导航回“主详细信息页面”时,保留了所有其他属性,但是图像清除了,这显然意味着“图像路径”属性丢失了。有人有这个问题吗?您如何解决呢?

这是我在JObject和“设置”中存储“图像路径”属性的方式:

 var imagepath = jObject.Value<string>("ImagePath");

   Settings.Path = imagepath;

这是我设置图像元素来源的路径的方法:

     profileImg.Source = 
     string.Format(UrlConstants.url2,Settings.Path.Substring(1));

这就是我从其他页面导航到“主要详细信息”的方式:

  Application.Current.MainPage = new PeppyMasterDetail();

这是我的“母版详细信息”页面“母版”部分的构造器:

  public MasterPage()
        {
            InitializeComponent();
            usernameLbl.Text = Settings.UserName;
            emailLbl.Text = Settings.Email;
            dateLbl.Text = "JOINED: " + Settings.Date;
            profileImg.Source = string.Format(UrlConstants.url2, Settings.Path.Substring(1));

        }

这是我的主从页面的构造器

    public PeppyMasterDetail ()
        {
            InitializeComponent ();                 
            mPage.listView.ItemSelected += OnItemSelected;

        }

使用Application.Current.MainPage导航后,我希望仍然能够看到我的图像而不会被清除。

PS:当我使用Navigation.PushAsync或 Navigation.PopAsync();

0 个答案:

没有答案