SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

5分でわかるActiveReports帳票

5分で"もっと"わかるActiveReports帳票(2008年度版)-ランタイムデザイナの開発

第1回 レポートファイル編集アプリケーションの作り方

  • X ポスト
  • このエントリーをはてなブックマークに追加

コンテナ(フォーム)を組み立てる

 それではさっそく、ランタイムデザイナの作成に入りましょう。まずVisual Studioで空のソリューションを作成してください。ソリューションを作成したらそれを右クリックして、[追加]-[新しいプロジェクト]の順に選択し、「新しいプロジェクトの追加」ダイアログを表示させます。ここで、プロジェクトテンプレートは「Windows フォーム アプリケーション」を選択してください。プロジェクトを作成すると、Visual StudioのデザイナにデフォルトのFormコントロールが表示されるので、ここにPanelコントロールとSplitterコントロールを配置していきます。

 まず最初は、左側のツールバーを配置するエリアを作成します。フォームへPanelコントロールをドロップし、DockプロパティをLeftに設定してください。それから、フォームへSplitterコントロールをドロップし、Panelコントロールと同じようにDockプロパティをLeftに設定してください。

 次に右側の、レポートエクスプローラとプロパティグリッドを表示するエリアを作成します。左側のエリアを作ったときと同じように、PanelコントロールとSplitterコントロールをフォームへドロップして、それぞれのDockプロパティを今度はRightに設定してください。

 右側のエリアはさらに上下2つに分かれているので、ここにPanelコントロールとSplitterコントロールをもう1つ追加します。DockプロパティはTopに設定します。

Panelを配置したところ
Panelを配置したところ

 図はここまでの作業で配置した各PanelコントロールのBackColorプロパティを変更して、コントロールの境界がわかるようにしたものです。一度、このプロジェクトをデバッグ実行して、Panelの各領域の境界がドラッグ&ドロップで変更可能かどうか確認してみてください。

コントロールを配置する

フォームへの配置とプロパティの設定

 フォームの土台部分の準備ができたら、次はコントロールをフォームに配置していきます。ツールボックスにActiveReportsのコントロールが追加されていない場合は、第1回の記事を参考に、コントロールを追加してください。

ツールボックスに追加されたActiveReportsのコントロール
ツールボックスに追加されたActiveReportsのコントロール

 ツールボックスからDesignerコントロールを選択し、フォーム中央の領域にドロップしてください。Designerコントロールの初期サイズはかなり大きいのでドロップすると大部分がはみ出してしまいますが、ここで特にサイズを調整する必要はありません。Designerコントロールをドロップしたら、DockプロパティをFillに設定すると、サイズが自動的に調整され、フォームの中にすっぽりと納まります。

 同じように、右上の領域にはReportExplorerコントロールを、右下の領域にはPropertyGridコントロールをそれぞれドロップし、DockプロパティをFillに設定してください。

 コントロールを配置したら、次は各コントロールを相互に関連付けていきます。まず、DesignerコントロールのPropertyGridプロパティに、いま追加したPropertyGridコントロール(デフォルトではpropertyGrid1)を設定します。それから、ReportExplorerコントロールのReportDesignerプロパティに、Designerコントロール(デフォルトではdesigner1)を設定します。

コントロールを貼り付けたところ
コントロールを貼り付けたところ

Toolboxコントロールを配置する

 次は、ランタイムデザイナにコントロールを配置するためのツールボックス部分を作成します。今回は、ツールボックス部分のコントロールとして、ActiveReports付属のサンプルを使用することにします。

 ActiveReprtsのインストールフォルダ(通常はC:\Program Files\ActiveReportsNET3)に含まれるSamplesフォルダには、ActiveReportsの機能を活用した、実用的なサンプルが多数収録されています。ここで、Samples\VS2005\CS\Professional\RuntimeDesignerフォルダ(VBの場合はSamples\VS2005\VB\Professional\RuntimeDesignerフォルダになります)にあるToolboxClassLibというフォルダを適当な場所へコピーしてください。

 フォルダのコピーが終わったら、Visual Studioでランタイムデザイナを作成しているソリューションを開き、右クリックメニューから[追加]-[既存のプロジェクト]を選んで、ToolboxClassLibフォルダの中にあるToolboxClassLib.csproj(vbproj)を選択します。Visual Studio 2008を使用している方は、ToolboxClassLib_2k8.csproj(vbproj)のほうを選択してください。ソリューションにプロジェクトを追加すると、Visual Studioのツールボックスに「ToolboxClassLib(VS2008の場合はToolboxClassLib_2k8)コンポーネント」というタブが作成され、Toolboxコントロールが利用可能になるので、これをフォーム左側のPanelコントロールへドロップします。

 サンプルのToolboxコントロールはプロパティグリッドにDockプロパティが出てこないので、フォームのLoadイベントで値を設定します。Loadイベントでは、DesignerコントロールのToolboxプロパティに、いま追加したToolboxコントロールを指定します。また、ToolboxコントロールのDockプロパティをFillに設定します。

フォームにToolboxコントロールを配置・設定する(C#)
private void Form1_Load(object sender, EventArgs e)
{
  this.designer1.Toolbox = this.toolbox1;
  this.toolbox1.Dock = DockStyle.Fill;
}
フォームにToolboxコントロールを配置・設定する(Visual Basic)
Private Sub Form1_Load(ByVal sender As Object, ByVal e As EventArgs) _
    Handles MyBase.Load
  Me.Designer1.Toolbox = Me.Toolbox1
  Me.Toolbox1.Dock = DockStyle.Fill
End Sub

次のページ
イベントを追加する

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
5分でわかるActiveReports帳票連載記事一覧

もっと読む

この記事の著者

宮本奈紗(ミヤモトナサ)

株式会社システムインテグレータ ERPソリューション部所属。ERPシステムの設計・開発に従事。業務でActiveReportsを使用。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

渡辺俊史(ワタナベトシフミ)

株式会社システムインテグレータ パッケージ開発部所属。ECサイト構築パッケージの設計・開発に従事。VSUG(Visual Studio User Group) データベース・データアクセスフォーラムリーダー。blog...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/2374 2015/06/04 12:59

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング