作成日: 2020/04/15 最終更新日: 2020/04/15
文書種別
使用方法
詳細
Windowsフォーム用のViewerコントロールのツールバーはカスタマイズして、独自の処理を実装することが可能です。
例えば、[印刷]ボタンがクリックされた時の処理をカスタマイズする場合、以下のようなコードになります。(Viewerコントロールにレポートを設定するコードは省略しています。)
◆サンプルコード(VB.NET)
◆サンプルコード(C#)
Windowsフォーム用のViewerコントロールのカスタマイズ方法や、ツールバーの各アイテム(ボタンなど)のインデックス/名称については、製品ヘルプの以下のトピックをご覧ください。
ActiveReportsユーザーガイド
- レポートの表示
- Windowsフォーム用のビューワの使用
- Windowsフォーム用ビューワのカスタマイズ
- Viewerコントロールのカスタマイズ
例えば、[印刷]ボタンがクリックされた時の処理をカスタマイズする場合、以下のようなコードになります。(Viewerコントロールにレポートを設定するコードは省略しています。)
◆サンプルコード(VB.NET)
Private tsbPrint As New System.Windows.Forms.ToolStripButton
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim toolStrip As System.Windows.Forms.ToolStrip
Dim orgBtn As System.Windows.Forms.ToolStripButton = Nothing
Dim orgItem As System.Windows.Forms.ToolStripItem
' イメージ取得のために標準の印刷ボタンを取得します。
toolStrip = Me.Viewer1.Toolbar.ToolStrip
orgItem = toolStrip.Items(2)
If TypeOf orgItem Is System.Windows.Forms.ToolStripButton Then
orgBtn = CType(orgItem, ToolStripButton)
End If
' 標準の印刷ボタンを削除します。
toolStrip.Items.RemoveAt(2)
' カスタムボタンの外観を標準の印刷ボタンに合わせます。(デフォルトは無効状態)
tsbPrint.Text = orgBtn.Text
tsbPrint.ToolTipText = orgBtn.ToolTipText
tsbPrint.Image = orgBtn.Image
tsbPrint.Enabled = False
' イベントハンドラを設定します。(Viewer.LoadCompletedはデザイナからも設定可)
AddHandler tsbPrint.Click, AddressOf Me.PrintButtonClick
AddHandler Viewer1.LoadCompleted, AddressOf Me.Viewer1_LoadCompleted
' カスタムボタンをツールバーに追加します。
toolStrip.Items.Insert(2, tsbPrint)
End Sub
' Viewerにレポートがロードされた時に呼び出されるイベント。
Private Sub Viewer1_LoadCompleted(sender As Object, e As EventArgs)
' カスタムボタンを有効にします。
tsbPrint.Enabled = True
End Sub
' カスタムボタンクリック時に呼び出されるイベント。
Private Sub PrintButtonClick(ByVal sender As Object, ByVal e As System.EventArgs)
' 印刷処理を行います。
Me.Viewer1.Print(True, True, False)
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim toolStrip As System.Windows.Forms.ToolStrip
Dim orgBtn As System.Windows.Forms.ToolStripButton = Nothing
Dim orgItem As System.Windows.Forms.ToolStripItem
' イメージ取得のために標準の印刷ボタンを取得します。
toolStrip = Me.Viewer1.Toolbar.ToolStrip
orgItem = toolStrip.Items(2)
If TypeOf orgItem Is System.Windows.Forms.ToolStripButton Then
orgBtn = CType(orgItem, ToolStripButton)
End If
' 標準の印刷ボタンを削除します。
toolStrip.Items.RemoveAt(2)
' カスタムボタンの外観を標準の印刷ボタンに合わせます。(デフォルトは無効状態)
tsbPrint.Text = orgBtn.Text
tsbPrint.ToolTipText = orgBtn.ToolTipText
tsbPrint.Image = orgBtn.Image
tsbPrint.Enabled = False
' イベントハンドラを設定します。(Viewer.LoadCompletedはデザイナからも設定可)
AddHandler tsbPrint.Click, AddressOf Me.PrintButtonClick
AddHandler Viewer1.LoadCompleted, AddressOf Me.Viewer1_LoadCompleted
' カスタムボタンをツールバーに追加します。
toolStrip.Items.Insert(2, tsbPrint)
End Sub
' Viewerにレポートがロードされた時に呼び出されるイベント。
Private Sub Viewer1_LoadCompleted(sender As Object, e As EventArgs)
' カスタムボタンを有効にします。
tsbPrint.Enabled = True
End Sub
' カスタムボタンクリック時に呼び出されるイベント。
Private Sub PrintButtonClick(ByVal sender As Object, ByVal e As System.EventArgs)
' 印刷処理を行います。
Me.Viewer1.Print(True, True, False)
End Sub
◆サンプルコード(C#)
private ToolStripButton tsbPrint = new System.Windows.Forms.ToolStripButton();
private void Form1_Load(object sender, EventArgs e)
{
System.Windows.Forms.ToolStrip toolStrip;
System.Windows.Forms.ToolStripItem orgItem;
System.Windows.Forms.ToolStripButton orgBtn = null;
// イメージ取得のために標準の印刷ボタンを取得します。
toolStrip = this.viewer1.Toolbar.ToolStrip;
orgItem = toolStrip.Items[2];
if (orgItem is System.Windows.Forms.ToolStripButton)
{
orgBtn = (System.Windows.Forms.ToolStripButton)orgItem;
}
// 標準の印刷ボタンを削除します。
toolStrip.Items.RemoveAt(2);
// カスタムボタンの外観を標準の印刷ボタンに合わせます。(デフォルトは無効状態)
tsbPrint.Text = orgBtn.Text;
tsbPrint.ToolTipText = orgBtn.ToolTipText;
tsbPrint.Image = orgBtn.Image;
tsbPrint.Enabled = false;
// イベントハンドラを設定します。(viewer.LoadCompletedはデザイナからも設定可)
tsbPrint.Click += this.PrintButtonClick;
viewer1.LoadCompleted += this.viewer1_LoadCompleted;
// カスタムボタンをツールバーに追加します。
toolStrip.Items.Insert(2, tsbPrint);
}
// Viewerにレポートがロードされた時に呼び出されるイベント。
private void viewer1_LoadCompleted(object sender, EventArgs e)
{
// カスタムボタンを有効にします。
tsbPrint.Enabled = true;
}
// カスタムボタンクリック時に呼び出されるイベント。
private void PrintButtonClick(System.Object sender, System.EventArgs e)
{
// 印刷処理を行います。
this.viewer1.Print(true, true, false);
}
private void Form1_Load(object sender, EventArgs e)
{
System.Windows.Forms.ToolStrip toolStrip;
System.Windows.Forms.ToolStripItem orgItem;
System.Windows.Forms.ToolStripButton orgBtn = null;
// イメージ取得のために標準の印刷ボタンを取得します。
toolStrip = this.viewer1.Toolbar.ToolStrip;
orgItem = toolStrip.Items[2];
if (orgItem is System.Windows.Forms.ToolStripButton)
{
orgBtn = (System.Windows.Forms.ToolStripButton)orgItem;
}
// 標準の印刷ボタンを削除します。
toolStrip.Items.RemoveAt(2);
// カスタムボタンの外観を標準の印刷ボタンに合わせます。(デフォルトは無効状態)
tsbPrint.Text = orgBtn.Text;
tsbPrint.ToolTipText = orgBtn.ToolTipText;
tsbPrint.Image = orgBtn.Image;
tsbPrint.Enabled = false;
// イベントハンドラを設定します。(viewer.LoadCompletedはデザイナからも設定可)
tsbPrint.Click += this.PrintButtonClick;
viewer1.LoadCompleted += this.viewer1_LoadCompleted;
// カスタムボタンをツールバーに追加します。
toolStrip.Items.Insert(2, tsbPrint);
}
// Viewerにレポートがロードされた時に呼び出されるイベント。
private void viewer1_LoadCompleted(object sender, EventArgs e)
{
// カスタムボタンを有効にします。
tsbPrint.Enabled = true;
}
// カスタムボタンクリック時に呼び出されるイベント。
private void PrintButtonClick(System.Object sender, System.EventArgs e)
{
// 印刷処理を行います。
this.viewer1.Print(true, true, false);
}
Windowsフォーム用のViewerコントロールのカスタマイズ方法や、ツールバーの各アイテム(ボタンなど)のインデックス/名称については、製品ヘルプの以下のトピックをご覧ください。
ActiveReportsユーザーガイド
- レポートの表示
- Windowsフォーム用のビューワの使用
- Windowsフォーム用ビューワのカスタマイズ
- Viewerコントロールのカスタマイズ
関連情報
旧文書番号
85407