当我向后滑动[PopAsync()]时,有一种更新边界数据的方法>> [

问题描述 投票:0回答:1
为了提供一些上下文,我正在编写Xamarin.Forms应用程序,并利用INotifyPropertyChanged与数据绑定。目前,我在一个按钮上显示一个库存计数器。此按钮上的文本显示有界的“计数”变量(例如,当前库存:35)。当我按下按钮时,我将屏幕推到导航堆栈上,这使我可以编辑此“ Count”变量。我使用这样的类实现

public class UserInventory : INotifyPropertyChanged { private int count = 0; // Declare the event public event PropertyChangedEventHandler PropertyChanged; public int Count { get => Preferences.Get(nameof(Count),0); set { if (count == value || value <1) return; Preferences.Set(nameof(Count), value); //count = value; //Application.Current.Properties["Count"] = count; OnPropertyChanged(nameof(Count)); //OnPropertyChanged(nameof(displayName)); } } public UserInventory() { } void OnPropertyChanged(string count) { PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(count)); } }

我根据Xamarin <ContentPage.BindingContext>
        <local:UserInventory />
    </ContentPage.BindingContext>上的教程在Xaml中添加了此类因此,变量已正确绑定,并且在查看当前页面或推送新页面时没有问题。问题是,当我在iOS上使用“当前库存:35”按钮向后滑动时,前一个屏幕没有更新以反映新的更改。如果我按该屏幕,更改将反映出来。

无论如何,当您返回时是否有界数据更新(PopAsync()?

为了提供一些上下文,我正在编写Xamarin.Forms应用程序,并利用INotifyPropertyChanged与数据绑定。目前,我在一个按钮上显示一个库存计数器。此文本...

xamarin xamarin.forms xamarin.ios xamarin-binding
1个回答
0
投票
尝试覆盖页面的OnAppearing()方法,然后从那里调用OnPropertyChanged。
© www.soinside.com 2019 - 2024. All rights reserved.