为了账号安全,请及时绑定邮箱和手机立即绑定

Xamarin Forms - 带有列表的单例

Xamarin Forms - 带有列表的单例

C#
蝴蝶不菲 2021-11-28 19:44:52
有人可以帮我实现一个带有 Carting 模块列表的单例。我的错误: “购物车”不包含“添加”的定义,最佳扩展方法重载“SettersExtensions.Add(IList, BindableProperty, object)”需要类型为“IList”的接收器这是我现在拥有的购物车.cspublic sealed class Cart    {        public static Cart Instance { get; } = new Cart();        static Cart() { }         private Cart() { }        public void GetAddedMeals()        {        }    }QuantityPopUp.xaml.csprivate void btnOK_Clicked(object sender, EventArgs e)        {            Cart.Instance.Add(tempcodeofmenu, int.Parse(entQuantity.Text));            Navigation.PushAsync(new OrderCart());        }购物车.cs  public OrderCart ()        {            InitializeComponent ();          MyCart.ItemsSource = Cart.Instance.GetAddedMeals();        }
查看完整描述

1 回答

?
天涯尽头无女友

TA贡献1831条经验 获得超9个赞

您需要从以下位置返回一些内容:


public ObservableCollection<YourItemClass> GetAddedMeals()

{

    ... // Fill in the blanks according to your implementation. Return a collection.

}

ObservableCollection 可用作列表的源,用于监视对该列表的更改。


然后您需要允许将其添加到。也许您打算Cart将集合作为基类?那样“添加”可以那样实现吗?


public Cart : ObservableCollection<YourItemClass>

但考虑到你的问题,我现在会避免这样做,直接进入拥有 ObservableCollection 作为成员的 Cart 类:


private ObservableCollection<YourItemClass> myCollection;

并实现您自己的 Add 类:


public void Add(YourItemClass item)

{

    myCollection.Add(item);

}


查看完整回答
反对 回复 2021-11-28
  • 1 回答
  • 0 关注
  • 237 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信