「MultiRow」+「InputMan」を検証する
MultiRow for ASP.NET 1.0Jは、Webアプリにおける一覧形式の編集画面で、操作性を格段に向上させます。特に業務Webアプリのように、一覧で大量にデータを入力するときにこそ、使っていただきたいコンポーネントです。
MultiRowの一つ一つの項目はセルと呼ばれていて、“ASP.NET Webコントロールと同じような動作+α”という仕様になっています。今回紹介するのは、このセルに、入力系コントロールの定番とも言えるInputManのASP.NET版「InputMan for ASP.NET 3.0J(SP3以降)」を使えるようにする合体技です。これは、MultiRow for ASP.NET 1.0JにSP1から実装された「InputManセル」によって実現することができます。次の表は、その機能一覧です。
セル型 | 機能 |
---|---|
テキスト入力 | 文字種の制限 半角全角変換などの自動変換 バイト数による最大文字数制限 入力行数の制限 サロゲートペアの入力禁止 |
マスク入力 | 正規表現による書式 スピン機能による選択 サロゲートペアの入力禁止 |
日付入力 | 表示書式と入力書式 和暦 休日指定 スピン機能による値の変更 ドロップダウンカレンダー |
数値入力 | 表示書式と入力書式 接頭、接尾語の表示 ドロップダウン電卓 スピン機能による値の変更 |
複数列コンボ | 複数列ドロップダウンリスト 項目ヘッダ ステータスバー表示 項目検索 表示書式と入力書式 画像項目 |
今回は、SP1公開以前に執筆した記事「一覧更新画面を持つWebアプリの作り方~MultiRow for ASP.NETの編集機能を使いこなす!」で作成したサンプルにInputManセルを適用し、適用前・適用後での操作性などを検証しながら、MultiRowとInputMan両方を利用することのメリットやポイントを、評価・解説していきたいと思います。
MultiRow for ASP.NET 1.0J SP1適用前に作成したプロジェクトをSP1に対応させる
MultiRow for ASP.NET 1.0Jでは、SP1適用前に作成したプロジェクトをSP1適用後に読み込むとエラーが検出されます。これは、SP1前後でアセンブリバージョンが「1.0.2010.609」から「1.0.2010.913」に変わっているためです。これらは、付属の移行ツールで移行が可能です。
参考までに、今回のサンプルでアセンブリバージョンが記載されていたファイルを記載しておきます。次の3つです。
- licenses.licxファイル
- web.configファイル
- MultiRowを使っているaspxファイル
テンプレートデザイナ
MultiRow for ASP.NET 1.0JのSP1およびInputMan for ASP.NET 3.0JのSP3適用後は、Webフォームに配置したMultiRowを右クリックして[テンプレートデザイナ]メニューを選択し、テンプレートデザイナを起動すると、ツールボックスにInputManセルが追加されています。
![図1 InputManセル](http://cz-cdn.shoeisha.jp/static/images/article/5726/5726_01.gif)
テンプレートデザイナでは、1レコード分のデザインを行います。今回のサンプルでは、MultiRowの標準セル型とInputManセルのセル型の違いが一目でわかるように、上下2段にして上段を標準、下段をInputManセルというデザインにしました。
図2では、表示モードを「セル型」にしているので、どのセルにセル型を配置したのかが一目瞭然です。表示モードは他にもタブオーダーやバインドしている列名など、デザイン上で確認したいものがそろっています。