void RefreshData() { TradeApi tapi = GlobalData.GetTradeApi(); var accounts = tapi.QueryAccountStatus().Value; if (accounts == null) { return; } List <Position> positions = new List <Position>(); foreach (var act in accounts) { var r = tapi.QueryPositions(act.AccountId); if (r.Value == null) { MessageBox.Show(r.Msg, "Error"); continue; } foreach (var p in r.Value) { positions.Add(p); } } listView1.BeginUpdate(); listView1.Items.Clear(); foreach (var pos in positions) { ListViewItem item = new ListViewItem(); item.Text = ""; // i.ToString(); item.SubItems.Add(pos.AccountId); item.SubItems.Add(pos.Code); item.SubItems.Add(pos.Name); item.SubItems.Add(pos.CurrentSize.ToString()); item.SubItems.Add(pos.EnableSize.ToString()); item.SubItems.Add(pos.InitSize.ToString()); item.SubItems.Add(pos.TodaySize.ToString()); item.SubItems.Add(pos.FrozenSize.ToString()); item.SubItems.Add(pos.Side); item.SubItems.Add(pos.Cost.ToString()); item.SubItems.Add(pos.CostPrice.ToString()); item.SubItems.Add(pos.LastPrice.ToString()); item.SubItems.Add(pos.FloatPnl.ToString()).ForeColor = pos.LastPrice > pos.CostPrice ? Color.Red : Color.Green; item.SubItems.Add(pos.ClosePnl.ToString()); item.SubItems.Add(pos.Margin.ToString()); item.SubItems.Add(pos.Commission.ToString()); listView1.Items.Add(item); } foreach (ColumnHeader col in listView1.Columns) { col.Width = -2; col.TextAlign = HorizontalAlignment.Right; } listView1.EndUpdate(); }
public MainForm() { InitializeComponent(); GlobalData.Init(); }