Witam
W trakcie wykonywania programu, wykonują się pewne złożone operacje. Aby zasugerować użytkownikowi że coś się dzieje, lecz program nie wisie chciałem pokazać okienko z taką właśnie informacją. Niestety metoda ShowDialog wisi sama w sobie i czeka na zakończenie. Dlatego też wstawiłem ją do wątka. Niestety nie chce to zadziałać :(
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Threading;
namespace thread_test
{
public partial class Form1 : Form
{
czekaj OknoCzekaj = new czekaj();
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
Thread watek = new Thread(PokazCzekaj);
watek.Start();
//// TUTAJ SIE DUZO DZIEJE
Thread.Sleep(5000);
OknoCzekaj.Close();
}
private void PokazCzekaj()
{
OknoCzekaj.ShowDialog();
}
}
}
OknoCzekaj to zwyczajna formatka z informacją "proszę czekać". Niestety przy próbie jej zamknięcia pojawia się problem. Nie wiem jak wywołać we wątku metodę Close() aby wątek się zakończył i okno znikneło