1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
|
private void openFileBt_Click(object sender, System.EventArgs e)
{
OpenFileDialog oFD = new OpenFileDialog();
oFD.InitialDirectory = ParamApp.InitialDirectory;
oFD.Filter = ParamApp.FileFilter ;
oFD.RestoreDirectory = true ;
if (oFD.ShowDialog() == DialogResult.OK) {
...
pi.thread += new ParsingInvoice.ThreadHandler (infoForm.onThreadEnd);
myThread = new Thread(new ThreadStart(threadReadFile));
myThread.Start();
}
}
private void threadReadFile () {
pi.OpenFile (); // ouvre le fichie du openfiledialog et le parcoure
pi.ThreadEnd (); //signale la fin du thread
infoForm.Show(); // fenêtre qui ne s'affiche qu'une fraction de seconde
}
------------------------------------
thread.cs
public void ThreadEnd () {
ThreadEventArgs e = new ThreadEventArgs (info);
if (thread != null) thread (this,e);
} |