作成日: 2022/04/20 最終更新日: 2022/04/20
文書種別
使用方法
詳細
Windowsフォーム用のViewerコントロールのツールバーはカスタマイズして、独自の処理を実装することが可能です。
例えば、[印刷]ボタンがクリックされた時の処理をカスタマイズする場合、以下のようなコードになります。(Viewerコントロールにレポートを設定するコードは省略しています)
◆サンプルコード (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); }
◆サンプルコード (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
Windowsフォーム用のViewerコントロールのカスタマイズ方法やツールバーの各アイテム(ボタンなど)のインデックス/名称については、製品ヘルプの以下のトピックをご覧ください。