ReportViewer for ASP.NET Web Forms
値に応じてフィールドを書式設定する
C1Report の使い方 > イベントの使用 > 値に応じてフィールドを書式設定する

これは、おそらく最も一般的な OnPrint プロパティの使用方法です。Nwind.xml サンプルファイルの "Orders by Value" レポートを例にします。このレポートでは、製品別にグループ化された注文数がリストされます。別のフィールドを使って在庫数を表示する代わりに、製品の名前を赤色の太字で表示することによって、在庫が追加注文レベルより少ない製品を強調表示します。

コードを使用して、追加注文レベルより少ない製品を強調表示するには

在庫が追加注文レベルより少ない製品を強調表示するためには、次のようなイベントスクリプトを使用します。

Visual Basic コードの書き方

Visual Basic
コードのコピー
Dim script As String = _    
  "If UnitsInStock < ReorderLevel Then" & vbCrLf & _    
  "ProductNameCtl.ForeColor = RGB(255,0,0)" & vbCrLf & _    
  "ProductNameCtl.Font.Bold = True" & vbCrLf & _    
  "Else" & vbCrLf & _    
  "ProductNameCtl.ForeColor = RGB(0,0,0)" & vbCrLf & _   
  "ProductNameCtl.Font.Bold = False" & vbCrLf & _    
  "End If"    
c1r.Sections.Detail.OnPrint = script

C# コードの書き方

C#
コードのコピー
string  script =      
  "if (UnitsInStock < ReorderLevel) then\r\n" +    
  "ProductNameCtl.ForeColor = rgb(255,0,0)\r\n" +     
  "ProductNameCtl.Font.Bold = true\r\n" +     
  "else\r\n" +    
  "ProductNameCtl.ForeColor = rgb(0,0,0)\r\n" +     
  "ProductNameCtl.Font.Bold = false\r\n" +     
  "end if\r\n";    
c1r.Sections.Detail.OnPrint = script;

このコードは、VBScript のイベントハンドラを1つの文字列として作成し、その文字列をセクションの OnPrint プロパティに割り当てます。C1Report デザイナを使用すると、上のコードを記述する代わりに、イベントエディタウィンドウに直接スクリプトコードを入力できます。

C1Report デザイナを使用して、追加注文レベルより少ない製品を強調表示するには

コードを記述する代わりに、C1Report デザイナを使用して、詳細セクションの OnPrint プロパティの VBScript エディタに次のスクリプトコードを直接入力できます。次の手順を実行します。

  1. デザイナの[プロパティ]ウィンドウのドロップダウンリストから、[詳細]を選択します。これで、セクションで使用できるプロパティが表示されます。
  2. OnPrint プロパティの横にある空のボックスをクリックし、ドロップダウン矢印をクリックして、リストから[スクリプトエディタ]を選択します。
  3. VBScript エディタのウィンドウに、次のスクリプトを入力します。
    If UnitsInStock < ReorderLevel Then ProductNameCtl.ForeColor = RGB(255,0,0) ProductNameCtl.Font.Bold = True Else ProductNameCtl.ForeColor = RGB(0,0,0) ProductNameCtl.Font.Bold = False End If

コントロールは、このセクションを出力するたびにこの VBScript コードを実行します。スクリプトは "ReorderLevel" データベースフィールドの値を取得し、その値に基づいて、"ProductName" レポートフィールドの Font.Bold プロパティと ForeColor プロパティを設定します。在庫が追加注文レベルより少ない製品は、製品名が赤色の太字になります。

次に、レポートの外見を示します。