作成日: 2023/06/15 最終更新日: 2023/06/15
文書種別
使用方法
詳細
C1FlexPivotPageコントロールの左パネルで、「テーブルに加えるフィールドを選択して下さい」の下に表示されるフィールドは、デフォルトではアルファベット順に並べられます。
これらのフィールドの順序を変更して任意の並び順にするには、以下の手順を実行します。
(1) 最初に、順序を変更したいフィールドをFieldsコレクションから削除します。
(2) 次いで、このフィールドを目的のインデックスの位置に挿入します。
以下に、製品収録のCustomColumnsサンプル※で、2・6・7番目のフィールドを順に先頭に移動する例を紹介します。サンプルプロジェクトのコードを下記のように追加・修正して、動作をご確認下さい。
※以下の場所にインストールされます。
C:\Users\<アカウント名>\Documents\ComponentOne Samples\WinForms\v4.5.2\FlexPivot\CS\CustomColumns

◎サンプルコード(VB)
これらのフィールドの順序を変更して任意の並び順にするには、以下の手順を実行します。
(1) 最初に、順序を変更したいフィールドをFieldsコレクションから削除します。
(2) 次いで、このフィールドを目的のインデックスの位置に挿入します。
以下に、製品収録のCustomColumnsサンプル※で、2・6・7番目のフィールドを順に先頭に移動する例を紹介します。サンプルプロジェクトのコードを下記のように追加・修正して、動作をご確認下さい。
※以下の場所にインストールされます。
C:\Users\<アカウント名>\Documents\ComponentOne Samples\WinForms\v4.5.2\FlexPivot\CS\CustomColumns
◎サンプルコード(VB)
Public Sub New()
InitializeComponent()
' get data
Dim da = New OleDbDataAdapter(My.Resources.sql, GetConnectionString())
Dim dt = New DataTable("NorthWind Sales Data")
da.Fill(dt)
' assign data to C1FlexPivotPage control
_c1FlexPivotPage.DataSource = dt
'Get the PivotEngine
'Dim fp = _c1FlexPivotPage.FlexPivotEngine '旧型式
Dim fp = _c1FlexPivotPage.PivotEngine '新型式
' ----(追加コード)フィールドの並び順を変更----
Dim field = fp.Fields(1) '2番目のフィールドの移動
fp.Fields.RemoveAt(1)
fp.Fields.Insert(0, field)
field = fp.Fields(5) '6番目のフィールドの移動
fp.Fields.RemoveAt(5)
fp.Fields.Insert(1, field)
field = fp.Fields(6) '7番目のフィールドの移動
fp.Fields.RemoveAt(6)
fp.Fields.Insert(2, field)
' ----------------------------------------------
'Adding Row, Column, and Value fields
fp.ValueFields.MaxItems = 3
AddHandler fp.Updated, AddressOf FlexPivot_Updated
fp.BeginUpdate()
fp.RowFields.Add("Country")
fp.ColumnFields.Add("Product")
fp.ValueFields.Add("Sales")
fp.EndUpdate()
End Sub
◎サンプルコード(C#)
public Form1()
{
InitializeComponent();
// get data
var da = new OleDbDataAdapter(Properties.Resources.sql, GetConnectionString());
var dt = new DataTable("NorthWind Sales Data");
da.Fill(dt);
// assign data to C1FlexPivotPage control
_c1FlexPivotPage.DataSource = dt;
//var fp = _c1FlexPivotPage.FlexPivotEngine; //旧型式
var fp = _c1FlexPivotPage.PivotEngine; //新型式
// ----(追加コード)フィールドの並び順を変更----
var field = fp.Fields[1]; //2番目のフィールドの移動
fp.Fields.RemoveAt(1);
fp.Fields.Insert(0, field);
field = fp.Fields[5]; //6番目のフィールドの移動
fp.Fields.RemoveAt(5);
fp.Fields.Insert(1, field);
field = fp.Fields[6]; //7番目のフィールドの移動
fp.Fields.RemoveAt(6);
fp.Fields.Insert(2, field);
// ----------------------------------------------
fp.ValueFields.MaxItems = 3;
fp.Updated += FlexPivot_Updated;
fp.BeginUpdate();
fp.RowFields.Add("Country");
fp.ColumnFields.Add("Product");
fp.ValueFields.Add("Sales");
fp.EndUpdate();
}