lbensch
Messages postés55Date d'inscriptionvendredi 1 avril 2005StatutMembreDernière intervention10 juin 2010
-
9 juin 2010 à 15:44
Tilois
Messages postés721Date d'inscriptiondimanche 10 juin 2001StatutMembreDernière intervention27 mars 2011
-
16 juin 2010 à 15:57
Bonjour,
J'ai des fenêtres qui jusqu'à maintenant s'ouvrait avec ShowDialog, or, mes utilisateurs se plaignaient de ne plus avoir accès aux autres fenêtres. Du coup, j'ai surchargé la méthode ShowDialog() pour effectuer un Show() avec un boucle pour attendre un DialogResult.
public new DialogResult ShowDialog(IWin32Window owner)
{
Show(owner);
while (DialogResult == DialogResult.None)
{
System.Threading.Thread.Sleep(100);
Application.DoEvents();
}
return DialogResult;
}/code
Cette fonction réponds au besoin, cependant, j'ai un petit soucis. Lorsque la fenêtre s'ouvre, elle n'a pas le focus, je suis obligé de cliquer une fois pour activer la fenêtre, puis une autre fois pour 'Ok'.
Est-ce que ma méthode est bonne, que dois-je faire pour avoir le focus immédiatement à l'ouverture (j'ai bien évidemment essayé BringToFront(), Focus(), Activate() mais rien)
lbensch
Messages postés55Date d'inscriptionvendredi 1 avril 2005StatutMembreDernière intervention10 juin 2010 10 juin 2010 à 08:56
En fait, le code appelant l'ouverture des fenêtres (assimilée modal) existe déjà et attend le DialogResult pour effectuer des actions (il y a près de 500 fonctions) du coup, il me faut trouver une solution qui ne m'oblige pas à modifier ces 500 fonctions.