カスタムタイルプロバイダサンプルでは、IMapTileProviderおよびIMapTileインタフェースを使用してカスタムタイルプロバイダを作成し、RDLレポートに配置されたMapコントロールでそれを構成する方法を示します。このサンプルでは、単一のVisual Studioソリューションに含まれるCustomTileProviders、TestDesignerPro、TestViewerの3つのプロジェクトを利用します。CustomTileProvidersプロジェクトにはタイルプロバイダ用のタイルサーバー構成が含まれ、TestDesignerProとTestViewerプロジェクトでは作成されたCustomTileProvidersプロジェクトのアセンブリを参照します。
フォルダ
Visual Basic.NET
<User Folder>\ActiveReportsNET18\Samples\Advanced\PageAndRDL\CustomTileProvider\VB.NET
C#
<User Folder>\ActiveReportsNET18\Samples\Advanced\PageAndRDL\CustomTileProvider\C#
実行時の機能
このサンプルを実行すると、
[ヘルプ:カスタムタイルプロバイダーの作成]ダイアログが上に重なった状態で、エンドユーザーデザイナが開きます。このダイアログには、Mapコントロール用の新しいタイルプロバイダをカスタム設定で作成するための手順が記載されています。
エンドユーザーデザイナに表示されたRDLレポートにはMapコントロールが配置されており、既定のタイルプロバイダは"MapQuest"に設定されています。既存のタイルプロバイダを変更するには、Mapコントロールをダブルクリックして既存のタイルレイヤー(TileLayer1)を表示し、右クリックして
[編集]を選択します。
[Map タイルレイヤー - 全般]ダイアログが表示されたら、
[プロバイダー]ドロップダウンをクリックして、Mapコントロールに適用するタイルプロバイダを選択します。[プレビュー]タブに移動して、選択したタイルプロバイダでデータを表示します。タイルプロバイダオプションは以下の中から選択できます。
- GoogleMaps-Sample
- Cloud-Made Sample
- MapQuest-Sample
- OpenStreetMap-Sample
プロジェクトの構造
CustomTileProvidersフォルダ
このフォルダには、CustomTileProviderプロジェクトで使用されるファイルが含まれます。
CloudMadeTileProvider.cs
このクラスは
IMapTileProviderインタフェースを実装しており、
http://cloudmade.comから提供される地図タイル画像の設定が含まれます。
GoogleMapsTileProvider.cs
このクラスは
IMapTileProviderインタフェースを実装しており、
http://maps.google.comから提供される地図タイル画像の設定が含まれます。
MapQuestTileProvider.cs
このクラスは
IMapTileProviderインタフェースを実装しており、
http://www.mapquest.comから提供される地図タイル画像の設定が含まれます。
MapTile.cs
このクラスはIMapTileインタフェースを実装しており、単一のマップタイルを表します。ImapTileインタフェースの詳細については、
カスタムタイルプロバイダーの追加 を参照してください。
OpenStreetMapTileProvider.cs
このクラスは
IMapTileProviderインタフェースを実装しており、
http://www.openstreetmap.orgから提供される地図タイル画像の設定が含まれます。
WebRequestHelper.cs
このクラスはタイルプロバイダからの生データを取得し、System.IO.MemoryStreamクラスにロードします。
TestDesignerProフォルダ
このフォルダには、TestDesignerProプロジェクトで使用されるファイルが含まれます。
DesignerForm.cs
これはサンプルの実行時に表示されるメインフォームです。このフォームは、ToolStripPanel、ToolStripContainerPanel、SplitContainer、Designer、Toolbox、ReportExplorer、PropertyGridなどの複数のコントロールを使用して、カスタマイズされたエンドユーザーデザイナを作成します。また、CustomTileProvider.rdlxレポートをDesignerにロードするコードも含まれます。
GrapeCity.ActiveReports.config
この構成ファイルには各種タイルプロバイダの設定が含まれており、タイルプロバイダ設定を有効にするためにEndUserDesigner.exeファイルと同じフォルダに存在します。
HelperForm.cs
このフォームはHelperFormクラスを使用して、ユーザーがカスタムタイルプロバイダを作成するための手順を示すフォームを表示します。
TestViewerフォルダ
このフォルダには、TestViewerプロジェクトで使用されるファイルが含まれます。
GrapeCity.ActiveReports.config
この構成ファイルには各種タイルプロバイダの設定が含まれており、タイルプロバイダ設定を有効にするためにEndUserDesigner.exeファイルと同じフォルダに存在します。
ViewerFormフォーム
レポートをViewerコントロールに表示します。
関連トピック