我的应用程序是MVVM架构。
我有photo.xaml页面,其中我有1个ListView whoose bindingcontext是ObservableCollection listphoto的照片,它在viewmodel.cs文件中定义。
现在我必须通过按钮点击photo.xaml重定向到BarcodeScan.cs。
我的问题我怎么能从这里添加项目到listphoto(BarcodeScan.cs)??
我试图像这样在BarcodeScan中定义新列表
public ObservableCollection<JobPhoto> ListSerialNumbers { get; set; }
并在其构造函数中初始化
ListSerialNumbers = new ObservableCollection<JobPhoto>();
但它不会更新photo.xaml页面上的列表。
我怎样才能做到这一点。我是MVVM.Please帮助的新手。
谢谢。
答案 0 :(得分:1)
您可以尝试使用MessageCenter https://developer.xamarin.com/guides/xamarin-forms/application-fundamentals/messaging-center/
在电话页面中,您可以下标消息并从另一页发送消息。
答案 1 :(得分:1)
您应该使用消息中心
首先将其方法注册为:
MessagingCenter.Subscribe<YourObjectClassComesHere>(this, "Any Message or empty string will be okay", (Obj) =>
{
//Code you want to execute
});
在此之后,您可以从另一个页面调用它
MessagingCenter.Send(YourObject(of type "YourObjectClassComesHere"), "Any Message or empty string will be okay");
希望它有所帮助。
更多详细信息,请访问:https://developer.xamarin.com/guides/xamarin-forms/application-fundamentals/messaging-center/
答案 2 :(得分:0)
我有photo.xaml页面,其中我有1个ListView whoose bindingcontext是ObservableCollection listphoto的照片,它在viewmodel.cs文件中定义。
首先,值得展示你的XAML代码。
您在上面的引文中说,您将listview的bindingcontext设置为集合。您应该将ListView的ItemSource属性设置为集合。