Я использую WeakMessageReferences.
Это класс, который я создал:
Код: Выделить всё
using CommunityToolkit.Mvvm.Messaging;
Код: Выделить всё
namespace NuesWarehouseMobile.Utilities
{
internal static class RefreshManager
{
public static void RequestRefresh(string viewName)
{
WeakReferenceMessenger.Default.Send(new RefreshViewMessage(viewName));
}
Код: Выделить всё
public static void Register(TRecipient recipient, Action action) where TRecipient : class
{
WeakReferenceMessenger.Default.Register(recipient, (r, m) => action(m));
}
public static void Unregister(TRecipient recipient) where TRecipient : class
{
WeakReferenceMessenger.Default.Unregister(recipient);
}
}
public class RefreshViewMessage
{
public string ViewName { get; }
public RefreshViewMessage(string viewName)
{
ViewName = viewName;
}
}
Я пытался кэшировать представления, чтобы они не удаляйте, но это не работает.
Я пытался привести несколько убедительных ссылок на одно и то же, но это не работает.
Я пробовал использовать разные методы для обновления своих представлений, но работают только сообщения, поэтому мне придется придерживаться это.
Подробнее здесь: https://stackoverflow.com/questions/793 ... bject-obje