void trader_ReturnOrderResponse(object sender, EsunnyEventArgs <TEsOrderInsertRspField> e) { if (this.InvokeRequired) { this.Invoke(new Action(() => { EsunnyInputOrder order = EsunnyConvert.ConvertOrder(e.Value); int i = orders.IndexOf(order); if (i < 0) { orders.Add(order); } else { EsunnyInputOrder data = orders[i]; data.OrderTradeStatus = order.OrderTradeStatus; data.TradeVolume = order.TradeVolume; data.Message = order.Message; orders.ResetItem(i); } })); } }
void trader_QueryOrderResponse(object sender, EsunnyEventArgs <List <TEsOrderInsertRspField> > e) { if (this.InvokeRequired) { this.Invoke(queryOrderResponse, sender, e); } else { foreach (var item in e.Value) { EsunnyInputOrder order = EsunnyConvert.ConvertOrder(item); int i = orders.IndexOf(order); if (i < 0) { orders.Add(order); } else { EsunnyInputOrder data = orders[i]; data.OrderTradeStatus = order.OrderTradeStatus; data.TradeVolume = order.TradeVolume; data.Message = order.Message; orders.ResetItem(i); } } } }