Home

Details sur les Propriétés des Contrôles

 

Les Dimensions d'un Contrôle

 

Introduction

La distance du bord gauche au bord droit d'un contrôle constitue sa largeur. De la même manière, la distance des bords haut au bas est la hauteur du contrôle. Ceci peut s'illustrer comme suit:

Dimensions

La combinaison de la largeur et la hauteur d'un contrôle constitue ses dimensions. Si vous ajouter un contrôle à un formulaire, il assume des dimensions par défaut. Pour changer les dimensions d'un contrôle pendant la conception, accédez à la fenêtre Propriété:

  • Cliquez sur le champ Size et tappez deux nombres séparés par une virgule
  • Alternativement, cliquez le bouton + du champ Size, cliquez Width et tappez une valeur; cliquez Height et tappez une valeur

Pour Programmatiquement Spécifier les Dimensions d'un Contrôle

Pour fournir du support aux dimensions d'un objet, le nom d'espace System.Drawing definit la structure Size. Il existe 4 caractéristiques qui définissent une valeur Size: sa position et ses dimensions:

Dimensions

Pour vous assister concernant les dimensions, la structure Size fournit le constructeur suivant:

public Size(int width, int height);

A base de ce constructeur, pour programmatiquement spécifier les dimensions d'un contrôle, donnez une valeur Size à sa propriété Size. Voici un exemple:

using System;
using System.Drawing;
using System.Windows.Forms;

public class Exercise : Form
{
    private Button btnSubmit;

    private void InitializeComponent()
    {
        btnSubmit = new Button();
        btnSubmit.Text = "Submit";
        btnSubmit.Location = new Point(100, 40);
        btnSubmit.Size = new Size(80, 32);

        Controls.Add(btnSubmit);
    }

    public Exercise()
    {
        InitializeComponent();
    }
}

public class Program
{
    static int Main()
    {
        Application.Run(new Exercise());
        return 0;
    }
}

Vous pouvez aussi définir un objet Size à base d'une valeur Point. Pour le supporter, la structure Size est equippée du constructeur suivant:

public Size(Point pt);

Après avoir déclaré une variable avec ce constructeur, vous pouvez accéder aux propriétés Width et Height pour compléter la définition de l'objet Size.

En dehors de Size, le nom d'espace System.Drawing fournit aussi la structure SizeF. Elle utilise les même propriétés que Size sauf que ses membres sont de type float.

Pour obtenir les dimensions d'un contrôle, vous pouvez obtenir la valeur de sa propriété Size et la donner à un objet Size.

La Position Rectangulaire d'un Contrôle

La combinaison de la position et les dimensions d'un objet est représentée par un rectangle: une figure géométrique avec 4 côtés. Pour fournir un support à cette figure, le nom d'espace System.Drawing fournit les structures Rectangle et RectangleF. Un rectangle peut être représenté comme suit:

Basé sur le système de coordonnées de Microsoft Windows et les dimensions d'un rectangle, un rectangle apparait comme suit:

Rectangle

 

Pour créer un rectangle, vous devez donner sa position et ses dimensions. La position est représentée par une valeur Point et les dimensions sont représentée par une valeur Size. Pour supporter ceci, la structure Rectangle est equippée du constructeur suivant:

public Rectangle(Point location, Size size);

Ce constructeur requiert des valeur Point et Size. A défaut, vous pouvez définir un rectangle basé sur ses coordonnées et ses dimensions. Pour celà, vous utiliseriez le constructeur suivant:

public Rectangle(int x, int y, int width, int height);

En dehors de la structure Rectangle, le nom d'espace System.Drawing fournit la structure RectangleF qui utilise les même définitions que Rectangle, sauf qu'elle utilise des valeurs de type float au lieu d'integrales.

Techniques Redimensionnement d'un Contrôle

 

Introduction 

Tous les contrôles graphiques, tels que le formulaire, peuvent être redimensionnées using la souris ou le clavier. Pour changer les dimensions d'un contrôle, selectionnez-le d'abord. Sauf pour le formulaire, quand un contrôle est sélectionné, il présente 8 petits carrés tout autour. Pour le redimensionner, positionnez votre souris sur un des carrés. Le pointeur de la souris changerait pour indiquer la direction de redimensionnement:

Curseur Rôle
Souris Change les dimensions dans la direction Nord-Ouest <-> Sud-Est
Souris Ecourte ou rend géant le contrôle
Souris Change les dimensions dans la direction Nord-Est <-> Sud-Ouest
Souris Rétrécit ou élargit le contrôle

La Largeur et la Hauteur d'un Contrôle

Imaginez que vous ayiez ajouté trois contrôles à un formulaire. Les dimensions d'un contrôle ou un groupe de contrôles sont du type Size. Pendant la conception, pour changer les dimensions d'un contrôle, cliquez-le d'abord. Puis, dans la fenêtre Propriétés, changez les valeurs de la propriété Size.

Pour changer les dimensions d'un groupe de contrôles, selectionnez-les d'abord. Puis, dans la fenêtre Propriétés, changez les valeurs du champ Size. Pour synchronizer les largeurs d'un groupe de contrôles, selectionnez-les d'abord. Puis, sur la barre d'outils Disposition ou sur groupe Format du menu principal, selectionnez:

Bouton Nom Format
Make Same Width Uniformiser la Largeur Uniformiser la Taille -> Largeur

Resultat: Tous les contrôles, sauf celui de base (le contrôle qui montre des carrés blancs), seront redimensionnés horizontallement pour avoir la même largeur comme le contrôle de base:

Le contrôle de haut est utilisé comme référence
A form with some controls selected using a fake rectangle => A form where a group of controls has been configured to have the same width with controls selected using a fake rectangle
Le contrôle du milieu est utilisé comme référence
=> A form where a group of controls has been configured to have the same width with controls selected at random
Le contrôle du bas est utilisé comme référence
A form with controls selected at random

Pour appliquer la même hauteur à un groupe de contrôles, selectionnez-les d'abord. Puis, sur the barre d'outils Disposition ou sur le groupe Format du menu principal, selectionnez:

Bouton Nom Format
Make Same Height Uniformiser la Hauteur Uniformiser la Taille -> Hauteur

Resultat: Tous les contrôles, sauf celui de base (le contrôle qui montre des carrés blancs), seront redimensionnés verticallement pour avoir la même hauteur que le contrôle de base:

Le contrôle de haut est utilisé comme référence
A form with some controls selected using a fake rectangle =>
Le contrôle du milieu est utilisé comme référence
A form with controls selected at random =>
Le contrôle du bas est utilisé comme référence
=>

Pour appliquer la même largeur et la même hauteur à un groupe de contrôles, selectionnez-les d'abord. Puis, sur la barre d'outils Disposition ou sur le groupe Format du menu principal, selectionnez:

Bouton Nom Format
Make Same Size Uniformiser la Taille Uniformiser la Taille -> Hauteur et Largeur

Resultat: Le Form Designer calculera la somme des hauteurs de tous les contrôles et trouver leur hauteur moyenne. Il calculera aussi la somme des largeurs de tous les contrôles et trouver leur largeur moyenne. Les moyennes seront appliquées à la hauteur et la largeur respectives de chaque contrôle:

=>
=>
=>

Propriétés Communes des Contrôles

 

L'Alignement de Contenu d'un Contrôle

Quand les dimensions d'un contrôle ont changé, ou ses dimensions peuvent changer, vous pouvez spécifier de quel côté son text apparaitrait. Cette caractéristique est controllée par la propriété TextAlign. Pour spécifier l'alignement de texte pendant le design, accéder à la fenêtre Propriétés pour un contrôle et utiliser le champ TextAlign:

Alignement Texte

La propriété TextAlign est de type ContentAlignment, qui est une énumération. Les membres et résultats de cette énumération sont:

TopLeft TopCenter TopRight
TopLeft TopCenter TopRight
MiddleLeft MiddleCenter MiddleRight
MiddleLeft MiddleCenter MiddleRight
BottomLeft BottomCenter BottomRight
BottomLeft BottomCenter BottomRight

Pour programmatiquement spécifier l'alignement de texte d'un contrôle, accéder à sa propriété TextAlign et assignez-la au membre désiré de l'énumération ContentAlignment. Voici un exemple:

using System;
using System.Drawing;
using System.Windows.Forms;

public class Exercise : Form
{
    private Button btnSubmit;

    private void InitializeComponent()
    {
        btnSubmit = new Button();
        btnSubmit.Text = "Submit";
        btnSubmit.Location = new Point(20, 20);
        btnSubmit.Size = new Size(100, 60);
        btnSubmit.TextAlign = ContentAlignment.BottomRight;

        Controls.Add(btnSubmit);
    }

    public Exercise()
    {
        InitializeComponent();
    }
}

public class Program
{
    static int Main()
    {
        Application.Run(new Exercise());
        return 0;
    }
}

Ancrage d'un Contrôle

Si vous positionnez un contrôle (visuel) sur un formulaire et si le contrôle est positionné au haut à gauche du formulaire, quand l'utilisateur redimensionne le formulaire, la position du contrôle apparaitrait fixée, il ne bougerait pas. La possibilité d'ancrer un contrôle est faite à base de la propriété Anchor:

The Anchor Property

La propriété Anchor est basée sur l'énumération AnchorStyles. Ses valeurs sont:

Bottom: Le bord bas du contrôle restera le même si la hauteur du parent change:

Ancrage Ancrage

Left: Le bord gauche du contrôle restera le même si la largeur du parent change:

Ancrage

None: Aucun ancrage n'est appliqué:

Ancrage

Right: Le bord droit du contrôle restera le même even si la largeur du parent change:

Ancrage
Ancrage


Top: Le bord haut du contrôle restera le même si la hauteur du parent change:

Ancrage
Ancrage

Bordures Liées au Contrôle 

Quan un contrôle est ajouté à un parent, dépendant du contrôle, il pourrrait être automatiquement positionné là où la souris avait attérit. Dans certains cas, vous voudrez que le contrôle soit attaché à un bord ou à un coin de son hôte. Ceci est fait en utilisant la propriété Dock:

Dock

Cette propriété est basée sur l'énumération DockStyle. Ses valeurs sont:

Bottom: Le contrôle sera attaché au bas bord de son parent:

Dock: Bottom A control docked bottom

Fill: Le contrôle utilisera toute la surface client de son parent.

Left: Le contrôle sera attaché au border gauche de son parent:

Dock: Right A control docked right

None: Le contrôle restera où il avait été positionné sur son parent:

Right: Le contrôle sera attaché to the right bord de son parent:

Dock

Top: Le contrôle sera attaché au bord haut de son parent:

Dock

Pour programmatiquement spécifier l'option de bordure d'un contrôle, accédez à sa propriété Dock et assignez-lui le membre désiré de l'énumération DockStyle. Voici un exemple:

public class Exercise : Form
{
    private Button btnSubmit;

    private void InitializeComponent()
    {
        btnSubmit = new Button();
        btnSubmit.Text = "Submit";
        btnSubmit.Dock = DockStyle.Right;

        Controls.Add(btnSubmit);
    }
}

Aspets Esthétiques d'un Contrôle

 

La Couleur de Fond

Les contrôles utilisés sur Microsoft Windows sont paints en utilisant des couleurs. Si vous n'aimez pas les couleur par défaut, vous pouvez les changer en utilisant le champ BackColor de la fenêtre Propriétés:

Back Color

Vous pouvez alors selectionner l'une des coulkeurs présélectionnées:

Personnaliser Web Back Color

Comme vous le voyez, les onglets System et Web utilisent des noms de couleurs. Les noms sont en Anglais. Les noms des onglets System et Web sont définis dans l'énumération Color.

Si vous n'êtes pas familiés avec les noms des couleurs, vous pouvez visuellement selectionner une couleur en utilisant l'onglet Personnaliser.

Pour programmatiquement spécifier la couleur de fond d'un contrôle, accédez à sa propriété BackColor et donnez-lui la valeur du membre désiré de l'énumération Color. Voici un exemple:

public class Exercise : Form
{
    private Button btnSubmit;
    
    private void InitializeComponent()
    {
        btnSubmit = new Button();
        btnSubmit.Text = "Submit";
        btnSubmit.BackColor = Color.Aquamarine;

        Controls.Add(btnSubmit);
    }
}

L'Image de Fond

Au lieu d'une couleur, il se peut que vous vouliez afficher une image sur un contrôle. Pour le faire, vous pouvez accéder à la propriété BackgroundImage du contrôle. Ceci vous permet de choisir une image et l'utiliser.

Le Style de Bord

Certains contrôles montrent un bord quand ils sont décidés. Voicci un example:

Certains contrôles vous permettent de les entourer avec un bord personnalié. Cette caractéristique est controllée par la propriété BorderStyle, qui est basée sur l'enumerator BorderStyle. Ses membres sont:

Valeur Example
Fixed3D
FixedSingle
None

Pour programmatiquement spécifier le style de bord d'un contrôle, accéder à la propriété BorderStyle et donnez-lui la valeur BorderStyle désirée. Voici un exemple:

using System;
using System.Drawing;
using System.Windows.Forms;

public class Exercise : Form
{
    private Panel pnlViewer;

    private void InitializeComponent()
    {
        pnlViewer = new Panel();
        pnlViewer.BorderStyle = BorderStyle.Fixed3D;
        pnlViewer.BackColor = Color.LightBlue;
        Controls.Add(pnlViewer);
    }

    public Exercise()
    {
        InitializeComponent();
    }
}

public class Program
{
    static int Main()
    {
        Application.Run(new Exercise());
        return 0;
    }
}

Les Characteristics API des Contrôles

 

L'Ordre de Tabulation

Un utilisateur peut naviguer parmi les contrôles en utilisant la clef Tab. Pendant les design, vous pouvez utiliser le champ TabStop dans la fenêtre Propriétés. C'est une propriété booléenne. Chaque contrôle visuel est déjà configuré pour que sa valeur de cette propriété soit True. Si vous voulez le soustraire de cette séquence, changez sa valeur TabStop à False.

La Visibilité d'un Contrôle

La possibilité de montrer ou cacher un contrôle est controllée par une propriété booléenne appelée Visible. Pendant le design, quand vous ajouter un contrôle à un parent, il est automatiquement visible par défaut. Ceci parce que la valeur par défaut de la propriété Visible est True dans la fenêtre Propriétés.

Si vous ne voulez pas qu'un contrôle apparaisse, changez sa propriété Visible à False ou changez la valeur Visible de son parent à False.

La Disponibilité d'un Contrôle

La disponibilité d'un contrôle est controllée par une propriété booléenne appelée Enabled. Par défaut, après avoir ajouté un contrôle à un formulaire, il est disponible et sa propriété Enabled dans la fenêtre Propriétés est mise à True. Un contrôle disponible montre sont texte ou ses caractéristiques normalement. Si vous voulez rendre un contrôle indisponible, changez sa propriété Enabled à False. Dans l'image suivante, la boîte de texte et le button2 ne sont pas disponible:

Enabled

Pour programmatiquement vérifier si un contrôle est disponible ou pas, vérifiez la valeur de sa propriété Enabled

 
 
 
 

Accueil Copyright © 2009, yevol.com