はじめに
前回は,Windows Mobile 6 SDKやWindows Mobile 6.5 DTKをインストールして開発環境を整えました。今回は「簡易テキストエディタ」を作りながら,.NET Compact FrameworkとVisual C#を使ったアプリケーション開発について一通り追いかけていきましょう。
作成したサンプルアプリケーションは,以下のリンクよりダウンロードが可能です。難しい処理は行っていませんので,実際に動かしながら本記事を読んでいただいたほうが理解が早いかもしれません。
- サンプルプログラム(72.5KB)
テキストエディタの仕様
以下の8機能を実装します。テキストエディタとしては非常に非力なものですが,「簡易」テキストエディタということでご了承ください。
- 直前の動作を取り消す「やり直し」
- 選択中の文章をクリップボードに保持する「コピー」
- 選択中の文章を切り取ってクリップボードに保持する「切り取り」
- クリップボードからの「貼り付け」
- 以前書いた文章を再度編集する「開く」
- 現在書いている文章の「保存」
- 指定した文字列までカーソルを移動させる「検索」
- 指定した文字列を別の文字列に置き換える「置換」
今回はこのうち「やり直し」と「コピー」の2機能を実装します。
ユーザーインターフェース
.NET Compact Frameworkを使ったアプリケーションは,デバイスの画面に対してコントロールと呼ばれるパーツを配置するのがとてもスピーディーにできます。
今回はテキストエディタなので,文章の入力が可能なTextBoxコントロールを配置して,メニューには先ほど挙げた仕様を満たすために,左ソフトキーメニューに項目を追加しただけのシンプルなUIです。
上図が今回作成するアプリケーションの最終形です。
新しいプロジェクトの作成
Visual Studioでは,ウィザードを使ってスケルトン(フォームだけのプロジェクト)を簡単に作ることができます。Visual Studioを起動させたあと,ツールバーから[ファイル]→[新規作成]→[プロジェクト]を選択します。
いくつか作成可能なプロジェクトの種類が表示されているのが判ります。この中から[スマートデバイス]を選びます。右側のテンプレートは[Smart Device プロジェクト]を選択してください。プロジェクトの名前は便宜上「TextEditor」とします。
Smart Device プロジェクトのウィザードでは,これから説明するデバイス アプリケーションのほかにも3種類のプロジェクトを作成することができます。
- コンソール アプリケーション
- クラス ライブラリ
- コントロール ライブラリ
コンソール アプリケーションは,標準設定ではコンソール画面が表示されませんので,Windows phoneで動かす機会はあまりないと思います。ユーザーの目に触れずに動かしたい,といったバッチ的な処理に向いています。
クラス ライブラリとコントロール ライブラリは名前の通りで,複数のクラスやコントロールは1つのDLLファイルにまとめることができます。アプリケーションとは別にクラスやコントロールを持たせることで,ほかのアプリケーションから利用可能になりますので,プログラムの再利用性を高めることができます。
私たちは実際にユーザーが操作可能なものを作成したいので,テンプレートからデバイス アプリケーションを選択しましょう。
今回のターゲットプラットフォームはWindows Mobile 6.5が搭載されたWindows phoneで動作させるのが目的ですが,選択肢にはWindows Mobile 6.5は出ていません。バージョン6.5は6.0のマイナーバージョンアップですので,ここでは以下の通り指定してください。
| ターゲットプラットフォーム | Windows Mobile 6 Professional SDK |
|---|---|
| .NET Compact Framework バージョン | .NET Compact Framework Version 3.5| |
| テンプレート | デバイス アプリケーション |
ターゲットプラットフォームを選択すると,Windows phoneのスキンに真っ白な画面(フォーム)が表示されています。アプリケーションの開発はこのフォームにコントロールを配置し,イベントに処理を関連付けて進めていきます。これでウィザードによるスケルトンの作成は完了です。

