Hallo Leute,
noch mal eine Frage zum Threading.
Ich habe eine Form auf der sich eine Progressbar befindet.
Diese Form wird immer dann angezeigt wenn ich in der Form dahinter Dateien
lade.
Jetzt sollte ich auf dieser form nat�rlich auch eine Cancel button haben den
man dr�cken kann jedoch ist die Form die ganze zeit ausgelastet und l�st es
nicht zu.
Wie stelle ich das am besten an?
Muss ich die Komplette Form in einem Thread laden?
Hier der Code der Form mit der Progressbar:
// Hier Setze ich die Werte der Progressbar
public void resetProgress(int piMin, int piMax)
{
this.ioPgbStatus.Minimum = piMin;
this.ioPgbStatus.Value = piMin;
this.ioPgbStatus.Maximum = piMax;
this.progressThread();
this.Refresh();
}
// Hier setze ich den Schritt
public void progressStep(int piStep)
{
this.iiStep = piStep;
}
// Thread der die Stepp Methode ausf�hrt
private void progressThread()
{
if(this.ioThProgressbar != null)
{
if(this.ioThProgressbar.ThreadState ==
System.Threading.ThreadState.Running)
{
try
{
this.ioThProgressbar.Abort();
}
catch(ThreadAbortException)
{
}
this.ioThProgressbar = null;
}
}
ioThProgressbar = new System.Threading.Thread(new
System.Threading.ThreadStart(step));
ioThProgressbar.Start();
}
// Methode erh�ht Value des Progressbar
public void step()
{
try
{
while(this.ioPgbStatus.Value <
this.ioPgbStatus.Maximum)
{
this.ioPgbStatus.Value +=
this.iiStep;
this.iiStep = 0;
this.Refresh();
this.ioPgbStatus.Refresh();
}
if(this.ioPgbStatus.Value ==
this.ioPgbStatus.Maximum)
{
this.ioThProgressbar.Abort();
}
}
catch(ThreadAbortException)
{
Thread.ResetAbort();
}
}
_______________________________________________
CSharp.net Mailingliste, Postings senden an:
[email protected]
An-/Abmeldung und Suchfunktion unter:
http://www.glengamoi.com/mailman/listinfo/csharp.net