Regret closing initial window and progressbar for timeconsuming events
This commit is contained in:
@ -36,7 +36,8 @@ namespace StockInfoCore
|
||||
private readonly frmBackup _backupWindow;
|
||||
private readonly frmEditStock _editStock;
|
||||
bool loading = false;
|
||||
|
||||
int progressValue = 0;
|
||||
|
||||
public int SelectedPersonId { get; set; } = 0;
|
||||
|
||||
public frmInitial(
|
||||
@ -83,13 +84,13 @@ namespace StockInfoCore
|
||||
btnBackupAll.Enabled = false;
|
||||
}
|
||||
|
||||
private void ReloadData(bool upd = false)
|
||||
private async Task ReloadData(bool upd = false)
|
||||
{
|
||||
loading = true;
|
||||
var allStocks = _stockRepository.GetAllStocks();
|
||||
if (upd)
|
||||
{
|
||||
_stockMarketRepository.LoadStockMarketList(SelectedPersonId);
|
||||
await _stockMarketRepository.LoadStockMarketListAsync(SelectedPersonId);
|
||||
allStocks.ToList().ForEach(SM => SM.ActValue = UpdateOnlyNonZeroAmount(SM).ActValue);
|
||||
}
|
||||
dataGridView.DataSource = allStocks;
|
||||
@ -103,32 +104,36 @@ namespace StockInfoCore
|
||||
var output = new StockMember();
|
||||
if (sMember.ActAmount > 0)
|
||||
{
|
||||
if (_stockMarketRepository.StockMarketList.ContainsKey(sMember.StockId)){
|
||||
if (_stockMarketRepository.StockMarketList.ContainsKey(sMember.StockId))
|
||||
{
|
||||
sMember.ActValue = _stockMarketRepository.StockMarketList[sMember.StockId].LatestPrice;
|
||||
_stockRepository.UpdateActualPrice(sMember.Id, sMember.ActValue);
|
||||
}
|
||||
}
|
||||
output=sMember;
|
||||
output = sMember;
|
||||
return output;
|
||||
}
|
||||
|
||||
|
||||
private void btnReload_Click(object sender, EventArgs e)
|
||||
private async void btnReload_Click(object sender, EventArgs e)
|
||||
{
|
||||
Cursor = Cursors.WaitCursor;
|
||||
ReloadData(true);
|
||||
Cursor=Cursors.Default;
|
||||
StartProgressTicking(350);
|
||||
await ReloadData(true);
|
||||
StopProgressTicking();
|
||||
}
|
||||
|
||||
private void frmInitial_FormClosing(object sender, FormClosingEventArgs e)
|
||||
private void frmInitial_FormClosing(object sender, FormClosingEventArgs e)
|
||||
{
|
||||
MessageBox.Show("B y e B y e !!");
|
||||
if (DialogResult.OK != MessageBox.Show("B y e B y e !!", "Should we close ?", MessageBoxButtons.OKCancel))
|
||||
{
|
||||
e.Cancel = true;
|
||||
}
|
||||
}
|
||||
|
||||
private void btnStockReg_Click(object sender, EventArgs e)
|
||||
{
|
||||
Cursor.Current = Cursors.WaitCursor;
|
||||
_stockMarketRepository.LoadStockMarketList(SelectedPersonId==0?10000: SelectedPersonId);
|
||||
_stockMarketRepository.LoadStockMarketList(SelectedPersonId == 0 ? 10000 : SelectedPersonId);
|
||||
_regWindow.Stocks = _stockMarketRepository.StockMarketList;
|
||||
Cursor.Current = DefaultCursor;
|
||||
_regWindow.ShowDialog();
|
||||
@ -152,16 +157,15 @@ namespace StockInfoCore
|
||||
}
|
||||
else
|
||||
{
|
||||
StartProgressTicking();
|
||||
var person = _personRepository.GetPersonById(SelectedPersonId);
|
||||
Cursor.Current = Cursors.WaitCursor;
|
||||
|
||||
|
||||
await _stockMarketRepository.LoadStockMarketListAsync(SelectedPersonId);
|
||||
|
||||
StopProgressTicking();
|
||||
_stockWindow.ConnectedPerson = person;
|
||||
_stockWindow.Stocks = _stockMarketRepository.StockMarketList;
|
||||
|
||||
Cursor.Current = DefaultCursor;
|
||||
//GlobalStopwatch.Stop();
|
||||
//GlobalStopwatch.Stop();
|
||||
//GlobalStopwatch.PrintSecs("Before Show Stockwindow");
|
||||
_stockWindow.ShowDialog();
|
||||
}
|
||||
@ -295,5 +299,32 @@ namespace StockInfoCore
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
private void tmrProgBar_Tick(object sender, EventArgs e)
|
||||
{
|
||||
pbInitial.Value = progressValue;
|
||||
if (progressValue < 100)
|
||||
progressValue += 1;
|
||||
}
|
||||
|
||||
public void StartProgressTicking(int intervall = 250)
|
||||
{
|
||||
pbInitial.Enabled = true;
|
||||
pbInitial.Minimum = 0;
|
||||
pbInitial.Maximum = 100;
|
||||
pbInitial.Value = 0;
|
||||
pbInitial.Visible = true;
|
||||
tmrProgBar.Interval = intervall;
|
||||
tmrProgBar.Enabled = true;
|
||||
tmrProgBar.Start();
|
||||
}
|
||||
|
||||
public void StopProgressTicking()
|
||||
{
|
||||
tmrProgBar.Stop();
|
||||
tmrProgBar.Enabled = false;
|
||||
pbInitial.Visible = false;
|
||||
progressValue = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user