Bonjour,
Voilà, j'ai une Windows Form de type MDI Parent, j'ai dans cette fenetre un progressBar qui est visible au moment de l'ouverture de fenetre MDI Fille.Windows XP SP2
FrameWork 2.0
Visual C# Express 2005
La progressBar est de type Marquee. Donc il n'y pas de code associé pour faire evoluer la progressbar, cependant au chargement d'une fenetre MDI, il y a un traitement assez important de recuperation des informations dans une base de données distante Oracle.
Je connaissais la méthode DoEvents en VB qui permettait de rafraichir qd le traitement d'une méthode mettait un certain temps, j'ai egalement mis en place un timer dans ma fenetre MDI mere qui fait un Application.Doevents.
Cependant la progressbar ainsi que l'application reste assez figée, pas de rafraichissement.
Voici le code d'ouverture de ma fenetre MDI fille afin de n'ouvrir qu'un type de MDI fille.
Voici l'appel à cette procédure pour ouvrir la fenetre mdi fille
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 /// <summary> /// Procédure d'ouverture d'une fenêtre MDI fille. /// </summary> /// <remarks>Si la fenêtre est déjà ouverte, alors cette fenêtre devient visible</remarks> /// <param name="pFormName"></param> /// <param name="pFormType"></param> private void OpenUniqueForm(string pFormName, Form pFormType) { Form[] ChildrenForms = this.MdiChildren; foreach (Form chform in ChildrenForms) { if (chform.Name== pFormName) { chform.Visible=true; return ; } } Form NewMdiChildForm = pFormType; NewMdiChildForm.MdiParent=this; NewMdiChildForm.Visible=true; }
Merci d'avance pour votre aide.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 private void taskItem1_Click(object sender, System.EventArgs e) { OpenUniqueForm("FormRps",new FormRps()); }
Partager