GrapeCity ActiveReports for .NET 14.0J
FlashViewerツールバーのカスタマイズ
ActiveReportsユーザーガイド > レポートの表示 > ASP.NET用のビューワの使用 > [No Target Defined] > FlashViewerツールバーのカスタマイズ

WebViewerコントロール(Professionalのみ)でViewerTypeをFlashViewerに設定した場合、Viewerコントロールのツールバーと同様のツールバーを利用できます。ツールバーの表示・非表示、ボタンの並べ替え、カスタムボタンの追加、カスタムツールバーの作成などの機能を使用して、ツールバーを簡単にカスタマイズできます。また、Web.Controls名前空間を使用してカスタムボタンまたはカスタムツールバーを作成し、そのツールバーをWebViewerのFlashViewerToolbarプロパティに指定できます。

デフォルトで提供されるボタンは以下の通りです。

見出し一覧 印刷 ページ範囲
検索 縮小 ズーム
拡大 単一ページ 複数ページ
連続ページ 前ページ 次ページ
ページ番号 戻る 進む
ゲラモード(RDLレポートのみ)
メモ: WebViewerコントロールのViewerTypeプロパティが「FlashViewer」に設定されていない場合、以下のコードは無視されます。

ツールバーの非表示

  1. Visual Studioの[ソリューションエクスプローラ]上でWebViewerを配置しているASPXファイルを右クリックし、[ビュー デザイナー]を選択します。
  2. Webフォームのデザインビューでページをダブルクリックします。PageLoadイベント用のイベントハンドラが作成され、ページのコードが表示されます。
  3. ツールバーを非表示するには、次のコードを使用します。

    Visual Basic

    Visual Basicコード(PageLoadイベント内に貼り付けます)
    コードのコピー
    WebViewer1.FlashViewerToolBar.Visible = False
    

    C#

    C#コード(PageLoadイベント内に貼り付けます)
    コードのコピー
    WebViewer1.FlashViewerToolBar.Visible = false;
    

「using」または「Imports」ディレクティブを追加する

ASPXのコードビューの上部に「using」または「Imports」ディレクティブを追加し、カスタマイズするために必要なコードを減らすことができます。

Visual Basic

Visual Basicコード(ASPXコードビューの先頭に張り付けます)
コードのコピー
Imports GrapeCity.ActiveReports.Web.Controls

C#

C#コード(ASPXコードビューの先頭に張り付けます)
コードのコピー
using GrapeCity.ActiveReports.Web.Controls;

ツールバーのボタンを並び替える

  1. Visual Studioの[ソリューションエクスプローラ]上でWebViewerを配置しているASPXファイルを右クリックし、[ビュー デザイナー]を選択します。
  2. Webフォームのデザインビューでページをダブルクリックします。PageLoadイベント用のイベントハンドラが作成され、ページのコードが表示されます。
  3. ボタンを作成し、ツールバーの先頭に配置するには次のコードを使用します。

    Visual Basic

    Visual Basicコード(Page_Loadイベント内に張り付けます)
    コードのコピー
    'ツールバーから既定のツールを取得します。(ツールのインデックスを指定することも可能です。)
    Dim tool As ToolBase = WebViewer1.FlashViewerToolBar.Tools("PageRangeButton")
    'ツールバーからツールを削除します。 
    WebViewer1.FlashViewerToolBar.Tools.Remove(tool)
    'ツールを違う位置に挿入します。 
    WebViewer1.FlashViewerToolBar.Tools.Insert(0, tool)
    

    C#

    C#コード(Page_Loadイベント内に張り付けます)
    コードのコピー
    //ツールバーから既定のツールを取得します。(ツールのインデックスを指定することも可能です。)
    ToolBase tool =  WebViewer1.FlashViewerToolBar.Tools["PageRangeButton"];
    //ツールバーからツールを削除します。
    WebViewer1.FlashViewerToolBar.Tools.Remove(tool);
    //ツールを違う位置に挿入します。 
    WebViewer1.FlashViewerToolBar.Tools.Insert(0, tool);
    

ツールバーからボタンを削除する

  1. Visual Studioの[ソリューションエクスプローラ]上でWebViewerを配置しているASPXファイルを右クリックし、[ビュー デザイナー]を選択します。
  2. Webフォームのデザインビューでページをダブルクリックします。PageLoadイベント用のイベントハンドラが作成され、ページのコードが表示されます。
  3. ツールバーのボタンを削除するには、次のコードを使用します。

    Visual Basic

    Visual Basicコード(Page_Loadイベント内に張り付けます)
    コードのコピー
    'ツールバーから既定のツールを取得します。(ツールのインデックスを指定することも可能です。)
    Dim tool As ToolBase = WebViewer1.FlashViewerToolBar.Tools("PageRangeButton")
    ' ツールバーからツールを削除します。 
    WebViewer1.FlashViewerToolBar.Tools.Remove(tool)
    

    C#

    C#コード(Page_Loadイベント内に張り付けます)
    コードのコピー
    //ツールバーから既定のツールを取得します。(ツールのインデックスを指定することも可能です。)
    ToolBase tool =  WebViewer1.FlashViewerToolBar.Tools["PageRangeButton"];
    //ツールバーからツールを削除します。
    WebViewer1.FlashViewerToolBar.Tools.Remove(tool);
    

カスタムボタンを作成してツールボックスに追加する

ヒント: Web.Controls名前空間のToolsCollectionクラスは、System.Collections.ObjectModel.Collectionの標準メソッドが使用可能ですので、ツールバーのボタンの追加だけの操作を行う場合、Addメソッドも使用することができます。
  1. Visual Studioの[ソリューションエクスプローラ]上でWebViewerを配置しているASPXファイルを右クリックし、[ビュー デザイナー]を選択します。
  2. Webフォームのデザインビューでページをダブルクリックします。PageLoadイベント用のイベントハンドラが作成され、ページのコードが表示されます。
  3. ボタンを作成してツールバーの先頭に配置するには、次のコードを使用します。

    Visual Basic

    Visual Basicコード(Page_Loadイベント内に張り付けます)
    コードのコピー
    Dim customButton As ToolButton = Tool.CreateButton("CustomButton")
    customButton.Caption = "お問い合わせ"
    customButton.ToolTip = "グレープシティ社のウェブサイトへ"
    customButton.ClickNavigateTo = "http://www.grapecity.com/jp/"
    '指定されたインデックスにボタンを追加します。この場合は、20に設定しています。
    '[戻る]と[進む]ボタンの間、最後から2番目に配置します。
    '最左に配置するには、インデックスパラメータを0に設定します。
    WebViewer1.FlashViewerToolBar.Tools.Insert(20, customButton)
    

    C#

    C#コード(Page_Loadイベント内に張り付けます)
    コードのコピー
    ToolButton customButton = Tool.CreateButton("CustomButton");
    customButton.Caption = "お問い合わせ";
    customButton.ToolTip = "グレープシティ社のウェブサイトへ";
    customButton.ClickNavigateTo = "http://www.grapecity.com/jp/";
    //指定されたインデックスにボタンを追加します。この場合は、20に設定しています。 
    //[戻る]と[進む]ボタンの間、最後から2番目に配置します。  
    //最左に配置するには、インデックスパラメータを0に設定します。
    WebViewer1.FlashViewerToolBar.Tools.Insert(20, customButton);
    

カスタムツールバーを作成してViewerに追加する

  1. Visual Studioの[ソリューションエクスプローラ]上でWebViewerを配置しているASPXファイルを右クリックし、[ビュー デザイナー]を選択します。
  2. Webフォームのデザインビューでページをダブルクリックします。PageLoadイベント用のイベントハンドラが作成され、ページのコードが表示されます。
  3. カスタムツールバーを作成してビューワに追加するには次のコードを使用します。

    Visual Basic

    Visual Basicコード(Page_Loadイベント内に張り付けます)
    コードのコピー
    'ツールバーに使用されるボタンとセパレータのコレクションを取得します。
    Dim collection As ToolsCollection = WebViewer1.FlashViewerToolBar.Tools
    'すべてのボタンとセパレータを削除します。
    collection.Clear()
    '定義済みのボタンを追加します。 
    collection.Add(Tool.Create(ToolsCollection.ToolCommands.ZoomOutButton))
    collection.Add(Tool.Create(ToolsCollection.ToolCommands.ZoomBox))
    collection.Add(Tool.Create(ToolsCollection.ToolCommands.ZoomInButton))
    'セパレータを追加します。
    collection.Add(Tool.CreateSeparator())
    '定義済みのボタンを追加します。
    collection.Add(Tool.Create(ToolsCollection.ToolCommands.SearchButton))
    'セパレータを追加します。
    collection.Add(Tool.CreateSeparator())
    'カスタムボタンを追加します。 
    collection.Add(Tool.CreateButton("btn1"))
    collection.Add(Tool.CreateButton("btn2"))
    

    C#

    C#コード(Page_Loadイベント内に張り付けます)
    コードのコピー
    //ツールバーに使用されるボタンとセパレータのコレクションを取得します。
    ToolsCollection collection = WebViewer1.FlashViewerToolBar.Tools;
    //すべてのボタンとセパレータを削除します。
    collection.Clear();
    //定義済みのボタンを追加します。
    collection.Add(Tool.Create(ToolsCollection.ToolCommands.ZoomOutButton));
    collection.Add(Tool.Create(ToolsCollection.ToolCommands.ZoomBox));
    collection.Add(Tool.Create(ToolsCollection.ToolCommands.ZoomInButton));
    //セパレータを追加します。
    collection.Add(Tool.CreateSeparator());
    //定義済みのボタンを追加します。
    collection.Add(Tool.Create(ToolsCollection.ToolCommands.SearchButton));
    //セパレータを追加します。
    collection.Add(Tool.CreateSeparator());
    //カスタムボタンを追加します。
    collection.Add(Tool.CreateButton("btn1"));
    collection.Add(Tool.CreateButton("btn2"));                                      
    
メモ: Web.Controls名前空間の使用可能なメンバに関しては、「GrapeCity.ActiveReports.Web.Controls 名前空間」を参照してください。