GridView for ASP.NET Web Forms
条件付き書式の設定
タスク別ヘルプ > グリッドのコンテンツの書式設定 > 条件付き書式の設定

特定の条件に基づいてグリッドの外観を変更したい場合があります。

コードの場合

特定の条件に一致するグリッド行やセルの外観を変更するには、 RowDataBound イベントを使用します。

RowDataBound イベントを使用して特定の行の色やセルのフォントを変更するには、次の手順を実行します。

  1. RowIndex プロパティを使用して、外観を変更する行の番号を指定します。
  2. C1GridViewRow.BackColor プロパティに目的の色を設定します。

    たとえば、RowDataBound イベントに次のコードを追加します。RowDataBound event:

    Visual Basic コードの書き方

    Visual Basic
    コードのコピー
    Protected Sub C1GridView1_RowDataBound(ByVal sender As Object, ByVal e As C1.Web.UI.Controls.C1GridView.C1GridViewRowEventArgs) Handles C1GridView1.RowDataBound
         If (e.Row.RowIndex = 2) Then
             e.Row.BackColor = System.Drawing.Color.Red
         End If
     End Sub
    

    C# コードの書き方

    C#
    コードのコピー
    private void C1GridView1_RowDataBound(object sender, C1.Web.UI.Controls.C1GridView.C1GridViewRowEventArgs e)
          {
              if ((e.Row.RowIndex == 2)) {
              e.Row.BackColor = System.Drawing.Color.Red;
          }
    }
    
  3. 特定のセルで使用されるフォントの色を変更するには、セル内のテキストと目的の色を指定します。

    たとえば、RowDataBound イベントに次のコードを追加します。

    Visual Basic コードの書き方

    Visual Basic
    コードのコピー
    Protected Sub C1GridView1_RowDataBound(ByVal sender As Object, ByVal e As C1.Web.UI.Controls.C1GridView.C1GridViewRowEventArgs) Handles C1GridView1.RowDataBound
         If (e.Row.Cells(0).Text = "Chang") Then
             e.Row.Cells(0).ForeColor = System.Drawing.Color.Green
         End If
     End Sub
    

    C# コードの書き方

    C#
    コードのコピー
    private void C1GridView1_RowDataBound(object sender, C1.Web.UI.Controls.C1GridView.C1GridViewRowEventArgs e)
     {
         if ((e.Row.Cells[0].Text == "Chang")) {
            e.Row.Cells[0].ForeColor = System.Drawing.Color.Green;
         }
     }
    
    メモ:このコード内の列インデックスは、適宜変更してください。このコードでは、テキスト「Chang」を含むセルのフォント色を緑色に変更しています。

ここまでの成果

最初のコードスニペットでは、3行目の背景色を赤色に変更しています。.

2つ目のコードスニペットでは、RowDataBound イベントを使用して、特定の行の色またはセルのフォントを変更しています。

関連トピック