2010-08-26 7 views
0

Je travaille sur une application C# windows où, l'utilisateur aura un contrôle onglet qui est placé en bas de l'écran [exactement où la barre des tâches Windows est là.] Tout est parfait sauf la position de formulaire qui a le contrôle de tabulation.Positionner les formulaires en fonction de la résolution du système en utilisant les fenêtres C#?

Lorsque j'exécute cette application avec une résolution de 1680 X 1050, la position est parfaite avec le code ci-dessous. Mais cette application sera également en cours d'exécution en 800 X 600.

Comment puis-je faire cela? Je veux que la position soit générique sur la résolution. Merci.

Le code qui fonctionne pour la résolution 1680 X 1050.

private void TaskBar_Load(object sender, EventArgs e) 
     { 
       this.DesktopLocation = new Point(0, 1020); 
     } 

Répondre

1

D'abord, vous trouvez l'écran sur lequel se trouve le formulaire.

Screen screen = Screen.FromControl(this); // Gets the screen where the form starts 

ou

Screen screen = Screen.PrimaryScreen; // Gets the primary screen (if user has many screens) 

vous trouvez alors la taille et l'emplacement de cet écran dans

screen.WorkingArea 

Cela devrait vous aider à positionner votre formulaire.

Modifier: Notez que screen.WorkingArea a déjà supprimé les pixels occupés par la barre des tâches.

Questions connexes