Reputation: 1
I'm working on a project in c#.net, a password generator. My problem is that when the password is generated a new window form opens and shows "please wait". My main form is inactive until processing is complete. I already use showdialog, which works, but it stops my main form processing. Help me, what can I do ?
Upvotes: 0
Views: 456
Reputation: 1457
It is a bit difficult to help if don't see any code.. but I make some working sample for you with entire flow:
BackgroundWorker worker;
Form dialogForm;
private void buttonGeneratePassword_Click( object sender, EventArgs e )
{
worker = new BackgroundWorker();
worker.DoWork += new DoWorkEventHandler( worker_DoWork );
worker.RunWorkerCompleted += new RunWorkerCompletedEventHandler( worker_RunWorkerCompleted );
worker.RunWorkerAsync();
dialogForm = new Form(); // dispay your dialog
dialogForm.ShowDialog();
}
void worker_RunWorkerCompleted( object sender, RunWorkerCompletedEventArgs e )
{
// password generated.. close dialog form
dialogForm.Close();
}
void worker_DoWork( object sender, DoWorkEventArgs e )
{
// put generate password code here
Thread.Sleep( 1000 ); // delete this line - it is only for testing flow without password generation code
}
Hope it help you..
Upvotes: 2