private void DisplayMerge(CurrencyConvertItem item) { if (Merges == null) { Merges = new ObservableCollection <CurrencyConvertItem>(); Merges.Add(item); return; } var existItems = from i in Merges where i.FromCode == item.FromCode && i.ToCode == item.ToCode select i; if (existItems.Count() == 0) { merges.Add(item); return; } var theItem = existItems.FirstOrDefault(); Merges.Remove(theItem); if (item.Rate != 1m) { merges.Add(item); } }
private void ConvertCurrency() { foreach (TickersByExchange tickers in marketTickers) { foreach (Ticker ticker in tickers) { if (NeedConvert) { ticker.ConvertRate = Rate; } else { ticker.ConvertRate = 1; } var tickerUpdater = apiManager.GetApi <ITickerApi>(ticker.Exchange.AbbrName); var refTicker = ticker; tickerUpdater.UpdateTicker(ref refTicker); } //将消息发出去!当前供价格提醒合并美元和人民币用! var item = new CurrencyConvertItem(); item.FromCode = marketTickers.Quote.Code; item.ToCode = LocalCurrencyCode; if (NeedConvert) { item.Rate = Rate; } else { item.Rate = 1m; } eventAggregator.GetEvent <ConvertCurrencyEvent>().Publish(item); } }