Xamarin 表格 |在不同页面上使用对象

Posted

技术标签:

【中文标题】Xamarin 表格 |在不同页面上使用对象【英文标题】:Xamarin Forms | Use a Object on Different Pages 【发布时间】:2021-06-21 07:43:25 【问题描述】:

我想用 Xamarin.Forms 创建一个 android 应用。 我在主页上创建了一个对象。该对象是许多其他对象的集合。 我的目标是将此集合对象推送到另一个页面,并且在此页面上我想将一个对象添加到集合对象。在此之后,我希望新添加的对象位于 MainPage 的集合中。

我正在使用 Push 和 Pop 在页面之间导航。 YT 教程仅在一个方向上起作用,因此我可以在第二页上看到对象,但是当我将对象添加到集合时,它在第二页上不可见。

提前致谢!

【问题讨论】:

而不是描述您的代码,实际发布相关代码更有效。页面只是 C# 类,您应该能够像使用任何类一样在它们之间传递对象 【参考方案1】:

Application 子类有一个静态的Properties 字典,可用于存储数据,特别是用于OnStartOnSleepOnResume 方法。可以使用 Application.Current.Properties 从 Xamarin.Forms 代码中的任何位置访问它。

你可以像这样保存它:

ObservableCollection<object> objects;

Application.Current.Properties ["YourKey"] = objects;

然后得到它:

if (Application.Current.Properties.ContainsKey("YourKey"))

    ObservableCollection<object> objects = (User)Application.Current.Properties["YourKey"];

你可以多看Properties dictionary

【讨论】:

以上是关于Xamarin 表格 |在不同页面上使用对象的主要内容,如果未能解决你的问题,请参考以下文章

从导航堆栈中删除页面 - xamarin.forms

Xamarin iOS部署无声无息

C#使用Xamarin开发Android应用程序 -- 系列文章

在 Xamarin.Forms 中将图像裁剪为正方形

如何删除 Xamarin.Forms 导航栏?

Xamarin表单,在Visual Studio Android Emulator上运行的应用程序但在真实设备上崩溃