private void eh_ManagedAccounts(object sender, ManagedAccountsEventArgs e) { List <string> accounts = e.ManagedAccounts as List <string>; System.Windows.Threading.Dispatcher.FromThread(OrderManager.UIThread).Invoke(() => { foreach (var acc in accounts) { AccountInfo acc1 = Accounts.FirstOrDefault <AccountInfo>(x => x.Name == acc); if (acc1 == null) { Accounts.Add(new AccountInfo() { Name = acc }); } } if (SelectedAccount == null && Accounts.Count > 0) { SelectedAccount = Accounts[0]; } }); }
void ibclient_ManagedAccounts(object sender, ManagedAccountsEventArgs e) { string[] acctList = e.AccountsList.Split(','); lock(private_lock) { foreach(string acct in acctList) { if(string.IsNullOrWhiteSpace(acct)) continue; string acct2 = acct.Trim(); if(!activeAccounts.ContainsKey(acct2)) activeAccounts.Add(acct2, 0.0); } } }