SplashScreen - progressbar
Hej,Jeg henter en række data fra nogle databaser og bruger en progressbar på en splashscreen til at vise hvor langt jeg er...
Jeg bruger koden:
public partial class FrmProgressControl : Form
{
public int _max {get; set;}
public FrmProgressControl()
{
InitializeComponent();
}
public void SetprogressBar(double Progress)
{
progressBar1.Maximum = _max;
progressBar1.Value = (int)Progress;
double x = Progress/_max*100.00;
FrmProgressControl.ActiveForm.Text = "Henter data... (" + Convert.ToInt16(x) + " % færdig)";
Application.DoEvents();
}
}
Funktionen "SetprogressBar" kaldes så i den del af programmet der styrer dataflowet.
Jeg åbner formen med:
FrmProgressControl frmprogress = new FrmProgressControl();
frmprogress._max = this._fileList.Count() * this._kKSKeys.Count();
frmprogress.TopLevel = true;
frmprogress.Show();
Det virker fint, men... hvis jeg skifter fokus væk fra FrmProgressControl (når jeg f.eks. checker email eller går på internettet) så kommer der en nullexception handler i koden "FrmProgressControl.ActiveForm.Text = "Henter data... (" + Convert.ToInt16(x) + " % færdig)";"
Hvorfor det? Hvordan laver jeg så en progressbar?