PowerTools MultiRow for Windows Forms 8.0J
列の合計をフッタに表示

サマリ型セル(SummaryCell)を使用すると、列の合計をフッタに表示できます。次の例は、NumericUpDownCellに入力された値の合計をフッタのSummaryCellに表示します。
単一セルの計算(デザイナによる設定)
単一セルの計算を行う場合、MathStatisticsのCellNameプロパティに計算を行うセルを設定します。
デザイナでフッタに単一セルの合計を表示するには、次のように操作します。

  1. 行(Row)に数値型セルを追加する。(例:numericUpDownCell1)
  2. Visual Studioの[テンプレート]−[追加]−[列フッタ]メニューを選択し、列フッタ(ColumnFooterSection)を追加する。
  3. 列フッタ(ColumnFooterSection)にサマリ型セルを追加する。(例:summaryCell1)
  4. summaryCell1を選択し、プロパティウィンドウでsummaryCell1.Style.Formatプロパティを「###,###」に設定する。
  5. プロパティウィンドウでsummaryCell1.CalculationプロパティのドロップダウンリストからMathStatisticsを選択する。
  6. summaryCell1.Calculationプロパティの右のプラスマークをクリックし、MathStatisticsオブジェクトのプロパティを展開する。
  7. MathStatisticsのStatisticsTypeプロパティを「Sum」に設定する。
  8. MathStatisticsのCellNameプロパティを「numericUpDownCell1」に設定する。
  9. デザイナのドキュメントウィンドウのタブを「実行時」に切り替える。

各行のnumericUpDownCell1に値を入力すると、その合計がフッタに表示されます。
単一セルの計算(コーディングによる設定)
Imports GrapeCity.Win.MultiRow

Dim NumericUpDownCell1 As New NumericUpDownCell()
NumericUpDownCell1.Name = "NumericUpDownCell1"
Dim SummaryCell1 As New SummaryCell()

' セルの値の表示書式を設定する  
SummaryCell1.Style.Format = "###,###"
' "NumericUpDownCell1" セルの列の合計を表示する  
SummaryCell1.Calculation = New MathStatistics(StatisticsType.Sum, "NumericUpDownCell1")

Dim cells As Cell() = {NumericUpDownCell1}
Dim Template1 As Template = Template.CreateGridTemplate(cells)

Dim ColumnFooterSection1 As ColumnFooterSection = New ColumnFooterSection()
SummaryCell1.Location = Template1.Row.Cells("NumericUpDownCell1").Location
ColumnFooterSection1.Cells.Add(SummaryCell1)
Template1.ColumnFooters.Add(ColumnFooterSection1)
GcMultiRow1.Template = Template1
using GrapeCity.Win.MultiRow; 

NumericUpDownCell numericUpDownCell1 = new NumericUpDownCell(); 
numericUpDownCell1.Name = "numericUpDownCell1";
SummaryCell summaryCell1 = new SummaryCell(); 
// セルの値の表示書式を設定する 
summaryCell1.Style.Format = "###,###"; 
// "numericUpDownCell1" セルの列の合計を表示する 
summaryCell1.Calculation = new MathStatistics(StatisticsType.Sum, "numericUpDownCell1"); 

Cell[] cells = { numericUpDownCell1 }; 
Template template1 = Template.CreateGridTemplate(cells); 

ColumnFooterSection columnFooterSection = new ColumnFooterSection();
summaryCell1.Location = template1.Row.Cells["numericUpDownCell1"].Location;
columnFooterSection.Cells.Add(summaryCell1);
template1.ColumnFooters.Add(columnFooterSection);
gcMultiRow1.Template = template1;

複数セルの計算(デザイナによる設定)
複数セルの計算を行う場合、MathStatisticsのExpressionStringプロパティに計算を行うセルを設定します。ExpressionStringプロパティには、計算に使用する式文字列を設定します。
デザイナでフッタに複数セルの合計の平均を表示するには、次のように操作します。

  1. 行(Row)に数値型セルを2つ追加する。(例:numericUpDownCell1、numericUpDownCell2)
  2. Visual Studioの[テンプレート]−[追加]−[列フッタ]メニューを選択し、列フッタ(ColumnFooterSection)を追加する。
  3. 列フッタ(ColumnFooterSection)にサマリ型セルを追加する。(例:summaryCell1)
  4. summaryCell1を選択し、プロパティウィンドウでsummaryCell1.Style.Formatプロパティを「###,###」に設定する。
  5. プロパティウィンドウでsummaryCell1.CalculationプロパティのドロップダウンリストからMathStatisticsを選択する。
  6. summaryCell1.Calculationプロパティの右のプラスマークをクリックし、MathStatisticsオブジェクトのプロパティを展開する。
  7. MathStatisticsのStatisticsTypeプロパティを「Average」に設定する。
  8. MathStatisticsのExpressionStringプロパティを選択し、[...]ボタンをクリックする。
  9. 表示されたExpression Builderで計算式を設定する。(例:numericUpDownCell1 + numericUpDownCell2)
  10. [OK]ボタンをクリックしてExpression Builderを閉じる。
  11. デザイナのドキュメントウィンドウのタブを「実行時」に切り替える。

各行のnumericUpDownCell1およびnumericUpDownCell2に値を入力すると、行ごとの合計の平均値がフッタに表示されます。
複数セルの計算(コーディングによる設定)
Imports GrapeCity.Win.MultiRow

Dim NumericUpDownCell1 As New NumericUpDownCell()
NumericUpDownCell1.Name = "NumericUpDownCell1"
Dim NumericUpDownCell2 As New NumericUpDownCell()
NumericUpDownCell2.Name = "NumericUpDownCell2"
Dim SummaryCell1 As New SummaryCell()

' セルの値の表示書式を設定する  
SummaryCell1.Style.Format = "###,###"
' "NumericUpDownCell1"と"NumericUpDownCell2"の合計の平均値を表示する 
Dim MathStatistics1 As New MathStatistics()
MathStatistics1.ExpressionString = "NumericUpDownCell1 + NumericUpDownCell2"
MathStatistics1.StatisticsType = StatisticsType.Average
SummaryCell1.Calculation = MathStatistics1

Dim cells As Cell() = {NumericUpDownCell1, NumericUpDownCell2}
Dim Template1 As Template = Template.CreateGridTemplate(cells)

Dim columnFooterSection1 As ColumnFooterSection = New ColumnFooterSection()
SummaryCell1.Location = Template1.Row.Cells("NumericUpDownCell1").Location
columnFooterSection1.Cells.Add(SummaryCell1)
Template1.ColumnFooters.Add(columnFooterSection1)
GcMultiRow1.Template = Template1
using GrapeCity.Win.MultiRow; 

NumericUpDownCell numericUpDownCell1 = new NumericUpDownCell();
numericUpDownCell1.Name = "numericUpDownCell1";
NumericUpDownCell numericUpDownCell2 = new NumericUpDownCell();
numericUpDownCell2.Name = "numericUpDownCell2";

SummaryCell summaryCell1 = new SummaryCell();
// セルの値の表示書式を設定する 
summaryCell1.Style.Format = "###,###";

// "numericUpDownCell1"と"numericUpDownCell2"の合計の平均値を表示する 
MathStatistics mathStatistics1 = new MathStatistics();
mathStatistics1.ExpressionString = "numericUpDownCell1 + numericUpDownCell2";
mathStatistics1.StatisticsType = StatisticsType.Average;
summaryCell1.Calculation = mathStatistics1;

Cell[] cells = { numericUpDownCell1, numericUpDownCell2 };
Template template1 = Template.CreateGridTemplate(cells);

ColumnFooterSection columnFooterSection = new ColumnFooterSection();
summaryCell1.Location = template1.Row.Cells["numericUpDownCell1"].Location;
columnFooterSection.Cells.Add(summaryCell1);
template1.ColumnFooters.Add(columnFooterSection);
gcMultiRow1.Template = template1;

   
参照

 

 


© 2008-2015 GrapeCity inc. All rights reserved.