/// <summary> /// 触发行情变更事件。 /// </summary> /// <param name="marketData">行情数据。</param> protected virtual void FireOnMarketDataChanged(USeMarketData marketData) { try { EventHandler <USeMarketDataChangedEventArgs> handel = this.OnMarketDataChanged; if (handel != null) { USeMarketDataChangedEventArgs args = new USeMarketDataChangedEventArgs(marketData); handel(this, args); } } catch (Exception ex) { Debug.Assert(false, ex.Message); } }
private void QuoteDriver_OnMarketDataChanged(object sender, USe.TradeDriver.Common.USeMarketDataChangedEventArgs e) { if (this.InvokeRequired) { this.BeginInvoke(new EventHandler <USeMarketDataChangedEventArgs>(QuoteDriver_OnMarketDataChanged), sender, e); return; } MarketDataViewModel marketModel = m_dataSource.FirstOrDefault(p => p.Instrument == e.MarketData.Instrument); if (marketModel != null) { marketModel.Update(e.MarketData); CalculateIndex(); } }