示例#1
0
        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();
        }
示例#2
0
 public MainForm()
 {
     InitializeComponent();
     GlobalData.Init();
 }