Neda mi nepodelit sa s mojim riesenim tzv. waiting dialogu. Nikde inde som zatial nevidel jednoduchsie a elegantnejsie riesenie, ak existuje, dajte vediet...
Definicia samotnej triedy okna:
public class WaitingForm : Form
{
public WaitingForm ()
{
InitializeComponent();
Thread th = new Thread(new ThreadStart(() =>
{
this.TopMost = true;
this.ShowDialog();
}));
th.Start();
}
protected override void Dispose(bool disposing)
{
this.Invoke(new MethodInvoker(() =>
{
base.Dispose(disposing);
}));
}
}
samotne pouzitie:
using(WaitingForm cakaj = new WaitingForm ())
{
//dlha operacia
Thread.Sleep(5000);
}
v samotstatnom vlakne sa vykonava zobrazovanie okna a nie beh dlhej operacie vzhladom k problemom v medzivlaknovej komunikacii...
tak co poviete?