Partager via


Comment : définir par programme les propriétés de style d'un contrôle serveur ASP.NET

Mise à jour : novembre 2007

Vous pouvez définir les propriétés de style d'un contrôle serveur ASP.NET par programme, ce qui vous permet d'effectuer une modification conditionnelle de l'apparence d'un contrôle.

Pour définir les propriétés de style par programme

  • Utilisez la convention hiérarchique suivante pour spécifier l'objet style et la propriété que vous souhaitez définir :

    Control.StyleObject.Property = value
    
    Control.StyleObject.Property = value;
    

    L'exemple de code suivant montre comment définir la propriété BackColor pour l'objet DayStyle d'un contrôle Calendar :

    Calendar1.DayStyle.BackColor = System.Drawing.Color.Green
    
    Calendar1.DayStyle.BackColor = System.Drawing.Color.Green;
    

    Vous pouvez également créer un objet Style distinct et copier ou fusionner les valeurs de ses propriétés avec l'un des styles d'un contrôle. C'est un puissant moyen d'appliquer les mêmes styles à des objets de différentes listes de votre projet. En effet, vous pouvez créer une feuille de style virtuelle comme objet Style, puis l'appliquer à une série de contrôles.

Pour créer un objet style et l'appliquer aux contrôles

  1. Créez une instance de l'objet Style et définissez ses propriétés, comme le montre l'exemple suivant :

    Dim s As Style = New Style()
    s.BackColor = System.Drawing.Color.Red
    
    Style s = new Style();
    s.BackColor = System.Drawing.Color.Red;
    
  2. Assignez l'objet Style à un contrôle à l'aide de l'une des méthodes suivantes :

    • La méthode CopyFrom applique tous les paramètres d'un objet Style, y compris ceux ayant des valeurs Null.

    • La méthode MergeWith copie uniquement les propriétés déjà définies de l'objet Style, en ignorant les propriétés Style qui n'ont pas été définies. De plus, la méthode MergeWith ne remplace aucun élément de style existant.

    L'exemple suivant montre comment créer un objet Style, définir une de ses propriétés, puis l'appliquer à deux objets style de contrôle différents, à l'aide de chacune des méthodes décrites :

    ' Apply all values in s, including nulls.
    Calendar1.SelectedDayStyle.CopyFrom(s)
    ' Apply only values in s that are null in HeaderStyle.
    DataGrid1.HeaderStyle.MergeWith(s)
    
    // Apply all values in s, including nulls.
    Calendar1.SelectedDayStyle.CopyFrom(s);
    // Apply only values in s that are null in HeaderStyle.
    DataGrid1.HeaderStyle.MergeWith(s);
    

Voir aussi

Tâches

Comment : définir les propriétés de style d'un contrôle serveur ASP.NET à l'aide de la syntaxe ASP.NET

Concepts

Contrôles serveur Web ASP.NET et styles CSS