次の方法で共有


方法 : ASP.NET サーバー コントロールのスタイル プロパティをプログラムで設定する

更新 : 2007 年 11 月

ASP.NET サーバー コントロールのスタイル プロパティはプログラムで設定できます。これにより、コントロールの外観を条件に応じて変更できます。

プログラムでスタイル プロパティを設定するには

  • 次のような階層的な表記規則を使用して、設定するスタイル オブジェクトおよびプロパティを指定します。

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

    Calendar コントロールの DayStyle オブジェクトの BackColor プロパティを設定する方法のコード例を次に示します。

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

    また、Style オブジェクトを個別に作成し、そのプロパティの値をコントロール上のスタイルの 1 つにコピーまたはマージすることもできます。この方法では、プロジェクト内のいくつかの異なるリスト オブジェクトに同じスタイルを適用できます。実際には、仮想スタイル シートを Style オブジェクトとして作成し、一連のコントロールに適用できます。

スタイル オブジェクトを作成してコントロールに適用するには

  1. 次のコード例に示すように、Style オブジェクトのインスタンスを作成してプロパティを設定します。

    Dim s As Style = New Style()
    s.BackColor = System.Drawing.Color.Red
    
    Style s = new Style();
    s.BackColor = System.Drawing.Color.Red;
    
  2. 次のいずれかのメソッドを使用して、Style オブジェクトをコントロールに割り当てます。

    • CopyFrom メソッドは、null であるものも含めて、Style オブジェクトからすべての設定を適用します。

    • MergeWith メソッドは、Style オブジェクトに既に設定されているプロパティだけをコピーし、設定されていない Style プロパティはスキップします。また、MergeWith メソッドは既存のスタイル要素を上書きしません。

    Style オブジェクトを作成してそのプロパティの 1 つを設定し、上記の各メソッドを使用してコントロールの 2 つの異なるスタイル オブジェクトに適用するコード例を次に示します。

    ' 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);
    

参照

処理手順

方法 : ASP.NET 構文を使用して ASP.NET サーバー コントロールのスタイル プロパティを設定する

概念

ASP.NET Web サーバー コントロールと CSS スタイル