| PowerTools ActiveReports for .NET 11.0J > ActiveReportsユーザーガイド > レポートの表示 > HTML5ビューワの使用 > HTML5ビューワのカスタマイズ |
HTML5ビューワはカスタマイズ可能なコントロールです。ビューワの外観を簡単に変更し、パブリックAPIを使用してコンポーネントを表示または非表示にすることができます。
以下の例では、HTML5ビューワで可能な数あるカスタマイズ方法のごく一部を紹介します。ここでは、uiTtypeをCustomに設定し、印刷とエクスポート用のカスタムボタンを追加しています。さらに、Paginatorコントロールを追加してレポートのページ番号を表示し、各ページに移動できるようにしています。
![]() |
メモ: 以下の手順は、すでに新しいASP.NET Webアプリケーションを作成し、ビューワに表示するサンプルレポートを追加していることを前提とします。 |
![]() |
メモ: これらのファイルは..\ActiveReportsNET11\Deployment\Htmlフォルダに配置されています(ja.txtは、さらにその配下のi18nフォルダに配置されています)。 |
![]() |
メモ: 以下のコードのように、Bootstrap.min.jsのソースをコンテンツデリバリーネットワーク(CDN)から取得することができます。また、ソースWebサイトからファイルをダウンロードしてプロジェクトにローカルに追加することもできます。 |
コード
| <head>タグと</head>タグの間に貼り付けます。 |
コードのコピー
|
|---|---|
<link href="//netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap.min.css" rel="stylesheet" /> <link href="/GrapeCity.ActiveReports.Viewer.Html.css" rel="stylesheet" /> |
|
コード
| <body>タグと</body>タグの間に貼り付けます。 |
コードのコピー
|
|---|---|
<div class="container">
<div id="paginator" class="pagination"></div>
<div id="viewer" style="width: auto; height: 600px"></div>
</div>
|
|
コード
| <body>タグと</body>タグの間に貼り付けます。 |
コードのコピー
|
|---|---|
<style>
#viewer {
position: absolute;
left: 5px;
right: 5px;
top: auto;
bottom: 5px;
font-family: 'segoe ui', 'ms sans serif';
overflow: hidden;
}
</style>
|
|
コード
| <body>タグと</body>タグの間に貼り付けます。 |
コードのコピー
|
|---|---|
<div class="panel panel-default">
<div class="panel-heading">
<div id="appToolbar" class="btn-toolbar" style="margin-bottom: 10px">
<button type="button" class="btn" id="btnPrint">
Print</button>
<button type="button" class="btn" id="btnExport">
Export to PDF</button>
</div>
</div>
</div>
|
|
![]() |
メモ: jQueryなどの依存関係のソースはコンテンツデリバリーネットワーク(CDN)から取得できます。また、ソースをダウンロードしてプロジェクトにローカルに追加することもできます。 |
コード
| <body>タグと</body>タグの間に貼り付けます。 |
コードのコピー
|
|---|---|
<script src="//cdnjs.cloudflare.com/ajax/libs/jquery/1.10.2/jquery.js" type="text/javascript"></script> <script src="//cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.1.0/js/bootstrap.js" type="text/javascript"></script> <script src="//cdnjs.cloudflare.com/ajax/libs/knockout/2.3.0/knockout-debug.js" type="text/javascript"></script> <script src="/GrapeCity.ActiveReports.Viewer.Html.js" type="text/javascript"></script> |
|
コード
| <body>タグと</body>タグの間に貼り付けます。 |
コードのコピー
|
|---|---|
<script type="text/javascript">
$(function () {
var paginator = $('#paginator');
var viewer = GrapeCity.ActiveReports.Viewer(
{
// 日本語のリソースファイルのパスを指定します。
localeUri: 'ja.txt',
element: '#viewer',
report: {
id: "SampleReport.rdlx"
},
reportService: {
url: '/ActiveReports.ReportService.asmx'
},
// uiTypeをCustomに設定します。
uiType: 'custom',
documentLoaded: function () {
setPaginator();
}
});
// 印刷用の関数を作成します。
$('#btnPrint').click(function () {
viewer.print();
});
// エクスポート用の関数を作成します。
$('#btnExport').click(function () {
viewer.export('Pdf', function (uri) {
window.open(uri);
}, false, {});
});
// Paginatorコントロールにレポートページを表示して各ページに移動できるようにする関数を作成します。
function setPaginator() {
if (viewer.pageCount > 0) {
for (var i = 1; i <= viewer.pageCount; i++) {
$('<li data-bind="' + i + '"><a class="js-page" href="javascript:void(0)">' + i + '</a></li>').appendTo(paginator);
}
paginator.children(":first").addClass('active');
paginator.children().click(function () {
var self = $(this);
viewer.goToPage(self.attr('data-bind'), 0, function () {
paginator.children().removeClass('active');
self.addClass('active');
});
});
}
}
});
</script>
|
|