首页 > 解决方案 > Xamarin.Forms jamesmontemagno 设置插件

问题描述

我正在构建 xamarin 表单应用程序,我正在使用jamesmontemagno设置插件,并且正在添加一个类列表的属性。但问题是我无法添加或插入列表,每次我使用 Add 或 Insert 方法时,它都会跳入 get 而不是集合,我不明白为什么。

这是我的代码,并提前感谢您的帮助:

//向列表中添加一个项目

 private void order(Sales_Order_Items sale)
{
    orderlist.Add(sale);
    Settings.Usercartlist.Add(sale);
}

我只能使用此代码进行设置

Settings.Usercarlist=orderlist;

设置文件中的属性

public static List<Sales_Order_Items> Usercartlist
{
    set
    {
        string listValue = JsonConvert.SerializeObject(value);
        AppSettings.AddOrUpdateValue(myIntListKey, listValue);          
    }
    get
    {
        string value = AppSettings.GetValueOrDefault(myIntListKey, string.Empty);
        List<Sales_Order_Items> myList;
        if (string.IsNullOrEmpty(value))
            myList = new List<Sales_Order_Items>();
        else
            myList = JsonConvert.DeserializeObject<List<Sales_Order_Items>>(value);
        return myList;
    }       
}

标签: c#xamarin.forms

解决方案


添加项目时,实际的对象引用不会改变。只有值改变。这不是由 getter 或 setter 拾取的。

在每个项目之后更新的唯一方法是添加您已经拥有的行:Settings.Usercarlist=orderlist;在每个操作之后。


推荐阅读