Définition de l'emplacement du formulaire lors de l'appel de Form.Show ()

Je suis en train de définir l'emplacement d'un formulaire lors de l'appel par .Show(). Le problème est que parce que je suis en utilisant .Show au lieu de .ShowDialog la StartPosition valeur ne fonctionne pas. Je ne peux pas utiliser le .Showdialog car je veux que le programme de travail en arrière-plan pendant l'affichage du formulaire.

Quand je suis de la création du formulaire je l'ai mis pour une valeur fixe:

using (ConnectingForm CF = new ConnectingForm())
{
    CF.Show();
    CF.Location = new Point(this.ClientSize.Width / 2, this.ClientSize.Height / 2);
}

Mais lorsque j'exécute le Code, le formulaire se positionne sur des positions différentes à chaque fois que je le démarre.

Toutes les solutions? (L'emplacement n'est jamais mis n'importe où ailleurs par mon code)

source d'informationauteur Robin