我有一个ObservationVebleColection绑定到listView。基本上,这个集合必须跟上服务器的每一个变化,并以字符串格式接收更新。添加独特的元素并自动更新C中的ObservableCollection#
我的代码解析字符串并将元素添加到集合中,但我无法找到删除元素的方法。如何在服务器上删除或更改元素时更新集合?
这里是我的代码:
public static ObservableCollection<TransactionDetails> offerList = new ObservableCollection<TransactionDetails>();
public async static Task<ObservableCollection<TransactionDetails>> getOfferList()
{
// Start getting Offers
string Offer = await BedpAPI_V1.getOfferList();
string[] splitedResponse = Offer.Split(new[] { "@@@@" }, StringSplitOptions.RemoveEmptyEntries);
foreach (string response in splitedResponse) {
string[] splitedMessage = response.Split(new[] { "|" }, StringSplitOptions.RemoveEmptyEntries);
offer.TransactionID = Convert.ToInt32(splitedMessage[0]);
offer.Seller = splitedMessage[1];
offer.Cost = Convert.ToDouble(splitedMessage[2]);
offer.Duration = Convert.ToInt16(splitedMessage[3]);
offer.Delay = Convert.ToInt16(splitedMessage[4]);
offer.Capacity = Convert.ToDouble(splitedMessage[5]);
offer.Availability = Convert.ToDouble(splitedMessage[6]);
if (currentOffer <= offer.TransactionID)
{
offerList.Add(new TransactionDetails() { TransactionID = offer.TransactionID, Seller = offer.Seller, Cost = offer.Cost, Duration = offer.Duration, Delay = offer.Delay, Capacity = offer.Capacity, Availability = offer.Availability });
currentOffer++;
}
}
return offerList;
}
@mjwills我认为这是明确:“在服务器上删除或更改元素时,如何更新集合?” –
你的代码现在做了什么@DiogoCosta?例如,它是否会抛出异常? **它怎么样?** – mjwills
因为它是代码做它应该(即它解析字符串并添加元素到集合)。我无法找到一种方法来使用我用来添加它们的相同逻辑来移除或更改当前元素。 –