Пример #1
0
        public void UpdateUI(bool resize = false)
        {
            if (InvokeRequired)
            {
                UpdateUICallback d = new UpdateUICallback(UpdateUI);
                Invoke(d, new object[] { resize });
            }
            else
            {
                try
                {
                    List <ExchangeBalance> list;

                    if (PreferenceManager.preferences.HideZeroBalances)
                    {
                        list = Balances.Where(item => item.Balance > 0).ToList();
                    }
                    else
                    {
                        list = Balances.ToList();
                    }

                    //List<ExchangeBalance> list = Balances.Where(item => item.Balance > 0).ToList();

                    //List<ExchangeBalance> wallets = WalletManager.GetWalletBalances();
                    list.AddRange(WalletManager.GetWalletBalances());
                    list.AddRange(WalletManager.GetWalletForkBalances());

                    /*
                     * list.AddRange(WalletManager.GetForkBalances());
                     */
                    listView.SetObjects(list.OrderByDescending(item => item.TotalInBTC));


                    switch (view)
                    {
                    case BalanceViewType.symbol:
                        //listView.SetObjects(list.OrderByDescending(item => item.Symbol).ThenByDescending(item => item.TotalInBTC));
                        //listView.SetObjects(list.OrderByDescending(item => item.TotalInBTC));
                        listView.Sort(column_Symbol, SortOrder.Ascending);
                        //listView.SetObjects(list.OrderByDescending(item => item.Symbol));
                        toolStripLabel_totals.Text = "";
                        break;

                    case BalanceViewType.exchange:
                        listView.SetObjects(list.OrderByDescending(item => item.Exchange).ThenByDescending(item => item.TotalInBTC));
                        listView.Sort(column_Exchange, SortOrder.Ascending);
                        //listView.Sort(column_Name, SortOrder.Ascending);
                        //listView.SetObjects(list.OrderByDescending(item => item.Name));
                        toolStripLabel_totals.Text = Exchanges.Count + " Exchanges";
                        break;

                    case BalanceViewType.balance:
                        //listView.SetObjects(list.OrderByDescending(item => item.TotalInBTC));
                        listView.Sort(column_TotalInBTC, SortOrder.Descending);
                        //listView.SetObjects(list.OrderByDescending(item => item.TotalInBTC));
                        toolStripLabel_totals.Text = "";
                        break;

                    default:

                        break;
                    }

                    //listView.SetObjects(list);

                    if (resize)
                    {
                        ResizeUI();
                    }
                }
                catch (Exception ex)
                {
                    LogManager.AddLogMessage(Name, "UpdateUI", ex.Message, LogManager.LogMessageType.EXCEPTION);
                }
            }
        }