作成日: 2022/08/22; 最終更新日: 2022/08/22
文書種別
使用方法
詳細
レポートをプレビューした際に、特定のページを表示させるには、C1FlexViewerPaneのPageIndexプロパティを設定するか、またはSetPageIndexメソッドを使用します。
初期表示時に指定したページを表示するには、Form1_Loadイベントにてこの設定を行います。
任意のタイミングで特定のページを表示させたい場合は、ボタンクリックイベントなどでこの設定を行うことができます。
以下に、Form1_Loadイベントで設定するサンプルコードを記載します。
事前にレポートデザイナで、Detailセクションに"Field1"と"Field2"という2つのTextFieldを追加したレポート(Test01.flxr)を作成し、プロジェクトに追加してください。
◎サンプルコード(VB)
初期表示時に指定したページを表示するには、Form1_Loadイベントにてこの設定を行います。
任意のタイミングで特定のページを表示させたい場合は、ボタンクリックイベントなどでこの設定を行うことができます。
以下に、Form1_Loadイベントで設定するサンプルコードを記載します。
事前にレポートデザイナで、Detailセクションに"Field1"と"Field2"という2つのTextFieldを追加したレポート(Test01.flxr)を作成し、プロジェクトに追加してください。
◎サンプルコード(VB)
Imports C1.Win.FlexReport
Public Class Form1
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
' レポートの読み込み、データ設定
C1FlexReport1.Load("..\..\Test01.flxr", "レポート 1")
Dim dt As DataTable = GetMyDataTable() ' データテーブルの作成
C1FlexReport1.DataSource.Recordset = dt ' データソースの設定
' TextFieldの設定
Dim tField1 As TextField = CType(C1FlexReport1.Sections.Detail.Fields("Field1"), TextField)
tField1.Text = "=ColumnA" '"ColumnA"列をバインド
Dim tField2 As TextField = CType(C1FlexReport1.Sections.Detail.Fields("Field2"), TextField)
tField2.Text = "=ColumnB" '"ColumnB"列をバインド
' プレビュー表示
C1FlexReport1.Render()
C1FlexViewer1.DocumentSource = C1FlexReport1
' 表示するページの指定(1)
C1FlexViewer1.Pane.PageIndex = 2
'' 表示するページの指定(2)
'C1FlexViewer1.Pane.SetPageIndex(2, False)
End Sub
Private Function GetMyDataTable() As DataTable
Dim dt As DataTable = New DataTable()
dt.Columns.Add("ColumnA", GetType(String))
dt.Columns.Add("ColumnB", GetType(String))
For i As Integer = 0 To 10 - 1
dt.Rows.Add((i + 1).ToString("0000"), ChrW(65 + i).ToString() + ChrW(65 + i).ToString())
Next
dt.AcceptChanges()
Return dt
End Function
End Class
◎サンプルコード(C#)
using C1.Win.FlexReport;
namespace prj_FlexReport
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
// レポートの読み込み、データ設定
c1FlexReport1.Load(@"..\..\Test01.flxr", "レポート 1");
DataTable dt = GetMyDataTable(); // データテーブルの作成
c1FlexReport1.DataSource.Recordset = dt; // データソースの設定
// TextFieldの設定
TextField tField1 = (TextField)c1FlexReport1.Sections.Detail.Fields["Field1"];
tField1.Text = "=ColumnA"; //"ColumnA"列をバインド
TextField tField2 = (TextField)c1FlexReport1.Sections.Detail.Fields["Field2"];
tField2.Text = "=ColumnB"; //"ColumnB"列をバインド
// プレビュー表示
c1FlexReport1.Render();
c1FlexViewer1.DocumentSource = c1FlexReport1;
// 表示するページの指定(1)
c1FlexViewer1.Pane.PageIndex = 2;
//// 表示するページの指定(2)
//c1FlexViewer1.Pane.SetPageIndex(2, false);
}
DataTable GetMyDataTable()
{
DataTable dt = new DataTable();
dt.Columns.Add("ColumnA", typeof(String));
dt.Columns.Add("ColumnB", typeof(String));
for (int i = 0; i < 10; i++)
{
dt.Rows.Add((i + 1).ToString("0000"), ((char)(65 + i)).ToString() + ((char)(65 + i)).ToString());
}
dt.AcceptChanges();
return dt;
}
}
}