C# Nouvelle forme jamais obtient le focus

J'ai essayé d'écrire une petite application avec sa propre option de windows. Lorsque j'essaie de lancer la fenêtre, je peux ne semblent jamais pour définir le focus sur le nouveau formulaire. Ce n'est pas un formulaire mdi, mais simplement un nouveau formulaire que j'ai créé lorsqu'un utilisateur sélectionne une option du menu. Il convient de noter que la Forme.Le Show est de retour false, ce qui signifie que le nouveau formulaire est de ne jamais recevoir le focus.

J'ai essayé plusieurs méthodes pour charger le formulaire et tous ont échoué:

De L'Appel De La Forme:

ServerForm SF = new ServerForm(ref DataLoader, false);
SF.Show();
SF.Focus();
//Fails

À l'intérieur de la forme elle-même:

this.Show();
this.BringToFront();
this.Activate();
this.TopMost = true;
//Fails

Paramètre de Forme de sélection:

this.SetStyle(System.Windows.Forms.ControlStyles.Selectable, true);
...
ServerForm SF = new ServerForm(ref DataLoader, false);
SF.Show();
SF.Focus();
//Fails

L'aide d'une Vieille API:

[System.Runtime.InteropServices.DllImport("user32.dll")]
private static extern int ShowWindow(IntPtr handle, int nCmdShow);    
ServerForm SF = new ServerForm(ref DataLoader, false);
ShowWindow(SF.Handle, 3);
SF.Show();
SF.Focus();
//Fails

Passant Parent

ServerForm SF = new ServerForm(ref DataLoader, false);
SF.Show(this);
SF.Focus();
//Fails

Dans tous ces cas, le formulaire s'affichera, mais la forme qui a donné naissance à toujours avoir le focus sur le nouveau formulaire. Cela se produit même lorsque je désactive l'ancienne forme avant que je créer le nouveau formulaire.

Des suggestions?

InformationsquelleAutor | 2009-05-12