ReportViewer for ASP.NET Web Forms
フィールドのサイズを変更して棒グラフを作成する
C1Report の使い方 > イベントの使用 > フィールドのサイズを変更して棒グラフを作成する

これは最も高度な例です。フィールドの値をテキストとして表示するのではなく、フィールドのサイズを変更してグラフを作成します。

グラフの作成

グラフを作成するには、最初にスケール(最大値および最小値として使用するサイズ)を調べる必要があります。「売上チャート」レポートには、この目的で設計されたフィールドがあります。これは、SaleAmountMaxFld という名前のレポートフッターフィールドで、グラフに表示する棒グラフの中で最も長い棒のサイズを保持し、次の式が含まれます。
=Max([SaleAmount])

コードを使用する場合

グラフの最大値を設定するには、SaleAmountMaxFld.Text プロパティを設定します。次のコードを入力します。

Visual Basic コードの書き方

Visual Basic
コードのコピー
SaleAmountMaxFld.Text = "Max([SaleAmount])"

C# コードの書き方

C#
コードのコピー
SaleAmountMaxFld.Text = "Max([SaleAmount])";

C1Report デザイナを使用する場合

グラフの最大値を設定するには、次の手順を実行して、SaleAmountMaxFld.Text プロパティを設定します。

  1. デザイナの[プロパティ]ウィンドウのドロップダウンリストから、SaleAmountMaxFld を選択します。これで、フィールドで使用できるプロパティが表示されます。
  2. Text プロパティの横にある空のボックスをクリックし、ドロップダウン矢印をクリックして、リストから[スクリプトエディタ]を選択します。
  3. VBScript エディタのウィンドウに、次のスクリプトを入力します。=Max([SaleAmount])


グラフの棒の描画

実際の棒を描画するために、レポートには BarFld という名前の詳細フィールドがあります。これは、塗りつぶした四角形になるように書式設定されています。詳細セクションでは、次のスクリプトが OnPrint プロパティに割り当てられています。

この式は、参照フィールドの幅と値、および現在のレコードの SaleAmountFld の値に基づいて、棒グラフの幅を計算します。

コードを使用する場合

グラフの実際の棒を描画するには、OnPrint プロパティを設定します。次のコードを入力します。

Visual Basic コードの書き方

Visual Basic
コードのコピー
c1r.Sections.Detail.OnPrint = & _    
  "BarFld.Width = SaleAmountMaxFld.Width * " & _    
  "(SaleAmountFld / SaleAmountMaxFld)"

C# コードの書き方

C#
コードのコピー
c1r.Sections.Detail.OnPrint = +      
  "BarFld.Width = SaleAmountMaxFld.Width * " +      
  "(SaleAmountFld / SaleAmountMaxFld)";

C1Report デザイナを使用する場合

グラフの実際の棒を描画するには、次の手順を実行して、OnPrint プロパティを設定します。

  1. デザイナの[プロパティ]ウィンドウのドロップダウンリストから、[詳細]を選択します。これで、詳細セクションで使用できるプロパティが表示されます。
  2. OnPrint プロパティの横にある空のボックスをクリックし、ドロップダウン矢印をクリックして、リストから[スクリプトエディタ]を選択します。
  3. VBScript エディタのウィンドウに、次のスクリプトを入力します。:BarFld.Width = SaleAmountMaxFld.Width * (SaleAmountFld / SaleAmountMaxFld)

次のスクリーンショットは、特殊効果が適用された「売上チャート」レポートのセクションです。

メモ:レポートの完全なサンプルについては、Nwind.xml レポート定義ファイルの「売上チャート」レポートを参照してください。