新機能 - 2009 Volume 2
弊社 Aikido™ フレームワーク上に構築されている最もパワフルで高いパフォーマンスを実現する ASP.NET AJAX コントロールは、階層データ グリッド、月カレンダー、日付ピッカー、WebDataGrid™ や WebSchedule™ の拡張コントロールとインジケーターをご提供します。すべてのコントロールは Microsoft® Windows® 7 でテスト済みです。以下は新機能の詳細です。
WebHierarchicalDataGrid™ - NEW!
新しい ASP.NET AJAX 階層データ グリッド コントロール WebHierarchicalDataGrid では、親子関係にあるデータをドリルダウン表示できます。ユーザーは、レコードを展開や縮小してデータ関係を表示やタブデータのすべてを 1 つの場所で管理できます。追加、編集、削除、並べ替えなど様々な機能をご利用いただけます。この ASP.NET AJAX 階層データ グリッド コントロールは、ロードオンデマンド、カスタムなタイプに対応した「pay-to-play」モデルなどの機能によるパフォーマンスの向上を念頭にデザインされています。魅力的な業務アプリケーション構築の詳細は、以下からご覧いただけます
Pay-to-play モデル
階層グリッドは、選択した動作に基づいてネットワークを介して描画されるマークアップや JavaScript を用いた最適化が可能です。機能が要求した場合に限り、クライアント側 JavaScript イベントやグリッド要素のオブジェクトを作成します。階層グリッドをアプリケーションのどこで使用するかを決める場合に役立ちます。また、必要に応じて描画するのでパフォーマンスを最適化できます。

データ バインディング
大量の階層データソース (IDataSource, IBindingList, IEnumerable などを実装するカスタム コレクション) を WebHierarchicalDataGrid へバインドすることが簡単にできます。更に、標準 ASP.NET データソース、ADO.NET データ ソース、データテーブル、データ ビューへのバインドも可能です。結合したい複数のフラット データ ソースがある場合、WebHierarchicalDataGrid を弊社の WebHierarchicalDataSource コントロールをバインドすることができます。以下は ASP.NET AJAX 階層データグリッドのバインド機能の詳細です。
- マスター詳細 データ - WebHierarchicalDataGrid™ は、マスター詳細 (親子) のデータ関係をサポートします。データ関係を展開形式のユーザー インターフェイスで表示することが可能です。
- 自己参照型データ - WebHierarchicalDataGrid™ は自己参照データに対応しています。自己参照型データの一般的な例として、従業員のデータ テーブルがあります。従業員間に管理関係がある場合などです。ASP.NET AJAX 階層データ グリッドでは、会社の従業員の関係を簡単に表示することが可能です。
- 複数子バンド - 各親レコードはさまざまな子データのタイプに親子関係を複数持つことができます。子データ タイプを別の子バンドに入れて親行から展開することが可能です。

コントロール テンプレート
ウェブベースのアプリケーション開発にグリッド コントロールを使用する場合、複雑なヘッダー、フッター、セル コンテンツに列テンプレートがよく使用されます。
列テンプレートに加えて、WebHierarchicalDataGrid は空行テンプレートやエラーテンプレートもサポートしています。. ASP.NET テンプレートは、一定の条件が満たされたときに WebHierarchicalDataGrid が自動的に表示するテンプレートです。
- エラー テンプレート - グリッド コントロール内でエラーが発生した場合もアプリケーションを実行しつづけますこのテンプレートは、グリッドのコンテンツ領域にエラーの原因を説明するユーザーフレンドリーなメッセージを提供します。
- 空行のテンプレート - このテンプレートは表示する行がない場合に表示されます。ユーザーがアプリケーションで検索機能を使用する場合に発生する場合があります。たとえば階層データグリッドで検索結果を表示するはずが、検索条件に一致した項目がない場合などに使用されます。
単一および複数の選択
ユーザーは、データ グリッド内に含まれるオブジェクト (セル、レコード(行)、列) を選択できます。拡張 SelectionType を設定します。シフト キー押しながら最初と最後のオブジェクトをクリックして、オブジェクトを連続範囲で選択できます。WebHierarchicalDataGrid は自動的に隣接するオブジェクトの連続する範囲を選択します。コントロール キーを押しながら WebHierarchicalDataGrid 内の任意のオブジェクトをクリックして、非連続的な範囲を選択することもできます。 バンドの選択も可能です。
セルのブロックは WebHierarchicalDataGrid のセルをキーボードの矢印を使って選択することも可能です。選択タイプが拡張された場合、シフト キーを押しながらセルを選択して左上と右下の角を指定して四角を形成します。
セル ブロックの選択は、最初のセルを選択して、マウスの左のボタンを押しながらカーソルをデータ グリッド上でドラッグします。セルを選択して最初のセルの位置とマウスの左ボタンをリリースしたところが、対角線上の端になっている四角を形成します。

行の追加、編集、削除
WebHierarchicalDataGrid はクライアント側での行の追加、更新、削除を Javascript で設定できます。また、ユーザーはインターフェイスを使って行の追加、更新、削除することができます。行は、バンドに表示される新規行の追加から追加できます。この新規行の追加は一番上のバンドや子バンドなど、どのバンドにも表示できます。単一または複数の行を選択して、[Delete] キーを使って削除することが可能です。エディター プロバイダーとして列を関連付けできるため、データ型に適したエディターを使用して簡単に行を更新できます。
自動検出エディター
WebHierarchicalDataGrid は列が編集可能な場合、列のデータ型に基づいて自動的にエディター プロバイダーを検出し、列に設定することが可能です。WebDateTimeEditor™ は DateTime 型のフィールドと関連付けられます。また、WebNumericEditor™ は型のフィールドなどと関連付けられます。これらの機能にコードを書く必要はありません。

並べ替え
ユーザーは、列ヘッダーをクリックして WebHierarchicalDataGrid™ の列の並び替えをコントロールできます。列値の並び替え方向が昇順または降順かを示すインジケーターを表示できます。ユーザーは、コントロールまたはシフト キーを押しながら列ヘッダーをクリックして複数列を並べ替えることが可能です。WebHierarchicalDataGrid をプリセットして特定の列をあらかじめ並べ替えて表示することも可能です。
ページング
WebHierarchicalDataGrid は大規模なデータ セットのレコードを分割して、エンドユーザーに 1 ページずつ表示することができます。多くの子バンドがある場合、WebHierarchicalDataGrid の各子バンドに対してページサイズを指定できます。これによって、何千行もの子バンドが一度に展開されることがなく、ページごとに表示することが可能です。ページングは、ユーザーがスクロールする手間を省きます。そのため、ユーザーは必要な情報をすばやく見つけることができます。

列の非表示
WebHierarchicalDataGrid はクライアント側またはサーバー側で列を非表示にすることが可能です。たとえば、ユーザーには意味のない機械可読なキー値を含む列などをビューで非表示にすることが可能です。値はクライアント側で描画されるため、非表示フィールドはコードからアクセスすることが可能です。ただしユーザーインターフェイスには表示されません。
キーボード ナビゲーション
TabIndex を integer に設定するだけで、移動、スクロール、アクティブ化、および選択を制御し、WebHierarchicalDataGrid でキーボードを使って移動することが可能となります。以下のキーがサポートされます。
- TAB – 次の行/セルをアクティブにします。
- SHIFT+TAB – 前の行/セルをアクティブにします。
- CTRL+TAB – アクティブ行とアクティブ セルを切り替えます。
- スペースバー – アクティブ セルがチェックボックスの場合、チェック状態を切り替えます。そうでない場合にはアクティブ行の選択/選択を解除します。
- LEFT ARROW – When a cell is active, this makes the next cell active. When a row is active, expands the child row island (if any).
- RIGHT ARROW – When a cell is active, this makes the previous cell active. When a row is active, collapses the child row island (if any).
- UP ARROW – Makes the row/cell in the previous row active. Applies only within the current row island. Press SHIFT+TAB to move to a parent row from the first row in a row island.
- DOWN ARROW – Makes the row/cell in the next row active. Applies only within the current row island. Press TAB to move to the next row in the parent band from the last row in a row island.
- CTRL+DOWN ARROW – Retrieves the next batch of rows through AJAX when using XML rendering.
- SHIFT+UP (or DOWN) ARROW – Includes the row above (or below) in a multiple-row selection. Applies only within the current row island.
- ENTER – Triggers a click if the cell is a cell button. Navigates to a cell's Target URL, if one exists.
- DEL – Deletes the current row.
- +/- – Pressing the + key expands the active row if it has children. Similarly, pressing the – key collapses the active row.
WebEditors™ - NEW!
このリリースでは Aikido™ フレームワーク上に構築された 6 つの新しい ASP.NET AJAX エディターが追加されました。
- WebMaskEditor - 適切なデータ書式での入力を促す入力ガイドを編集中に表示する入力マスク
- WebDateTimeEditor - 拡張されたローカライゼーションと日付の入力および表示書式
- WebNumericEditor - スピン ボタンを使用した一般的な数値データ入力
- WebCurrencyEditor - さまざまな通貨の入力をサポート
- WebPercentEditor - パーセントの入力に対応
- WebTextEditor - 複数行と入力文字がアスタリスクで表示されるパスワード モードを提供

スピン ボタン
値を増加/減少させるスピン ボタンをエディターに追加できます。テキスト エディターに値のリストをバインドした場合、ユーザーはスピン ボタンを使ってリストの値を選択することも可能です。ドロップダウンを使用せずにドロップダウンと同様の機能を実現できます。

プロンプト文字:
各エディターはウォーターマーク(またはnull 値の場合のプロンプト テキスト) を表示でき、エディターがフォーカスを受けると非表示になります。ユーザーが値を指定せずにフォーカスを移動した場合、このウォーターマークが再び表示されます。

ASP.NET AJAX 検証サポート
ASP.NET AJAX エディターの検証サポートは大変便利な機能です。WebEditors の ASP.NET の検証サポートでは、ビジネスルールに合わないデータの送信を防止できます。クライアント ブラウザーでデータを入力時に検証するのがもっとも時間の節約になり効果的です。

簡単にローカライズ
カルチャー情報を設定し、ユーザーに WebEditors のカスタム フォームを提供することにより、グローバルなアプリケーションにシームレスなローカライゼーション エクスペリエンスを簡単に実現できます。

WebMonthCalendar™ - NEW!
WebMonthCalendar の新しい ASP.NET AJAX カレンダー コントロールは、Aikido フレームyワーク上に構築されたために実現できたすぐれたスタイル機能、ナビゲーション、標準準拠を提供します。更に、多くの開発者からご要望をいただいていた週番号の表示機能も含まれています。

ローカライズとスタイル化
カルチャーを選択するだけで自動的にカルチャーに適切な書式の月カレンダーが提供されます。

スタイル セットには、Office 2007 から Appletini まで人気のルックアンドフィールドが数多く含まれています。月カレンダーのスタイリング ポイントには以下が含まれます。
- Custom day styles
- Weekend styles
- Active day styles
- Hover styles
- Disabled styles
- Selected styles
- Styles for days in other months

1 日から 10 年まで
連続する日付を単一または複数で選択するなど、さまざまなシナリオにおいて WebMonthCalendar をご使用いただけます。もちろん、非連続な日付も コントロール キーを押すだけで選択可能です。表示選択モードでは、月から特定の日を選択、10 年から年を選択、 1 世紀から特定の 10 年間を選択、1000 年からある 1 世紀を選択など、自由自在に好きな範囲を表示することが可能です。.

Windows Vista® ようのキーボード ナビゲーション
多くのユーザーは Windows Vista オペレーション システムのキー マッピングに馴染みがあります。ASP.NET AJAX アプリケーションの WebMonthCalendar のさまざまなビューでは、キーボードを使ってのナビゲーションや日付の選択が可能です。
WebDatePicker™ - NEW!
日付編集フィールドなどを初めから表示して、月カレンダーをドロップダウンで表示するので、ユーザーがカレンダーから日付を選択できます。WebDatePicker は、データグリッド、また従来 WebDateChooser™ を使用していたウェブ フォームなどに理想的なエディターです。

新しい WebMonthCalendar (上記) と ASP.NET AJAX 駆動の新しい WebDateTimeEditor™ の拡張された日付編集機能のすべてをドロップダウン日付ピッカーへ統合することにより、完全なスタイル化が可能で、またさまざまなブラウザーで実行できます。この 2 つの機能はアプリケーションのどこでも使用することができ、すばらしいユーザー エクスペリエンスを提供します。
再利用可能なカレンダー
同じページで WebDatePickers を一度にいくつ使用した場合も、すべて同じ WebMonthCalendar を使用します。 これは、ドロップダウンに表示されるカレンダーは 1 つだけなためです。マークアップやメモリーオーバーヘッドに関してこのクライアント側フットプリントを軽量化します。反応の速さとアプリケーションの高いパフォーマンスにより、ユーザーに魅力的な ux を提供します。
アニメーション
WebDatePicker のドロップ ダウン カレンダーの展開や縮小時にアニメーション効果を設定できます。
WebDataGrid - 拡張機能
列の固定
WebDataGrid は、データグリッドの右側/左側へ列を設定できます。ユーザーが列にピンを簡単に設定できるため、水平スクロールを使用せずにすばやく必要なデータを参照することが可能です。固定列をスタイル化して列のスタイルをカスタマイズしたり、列ヘッダーでピンを表示する位置を設定できます。

仮想スクロール
WebDataGrid は、列に表示するデータの一部を最初にクライアント側へ送信します。その後、ユーザーがスクロールするに従って追加行を非同期に要求し表示します。瞬時に列を表示することによりデータ グリッドのパフォーマンスを格段に向上します。ユーザーは、すべてのデータソースをクライアント側へ送信しないため、大量のデータをすばやく移動することが可能です。
2 つの仮想スクロール モードをサポートしています。
- 仮想モード - ユーザーは WebDataGrid 内で既にキャッシュされている列を瞬時にスクロールできます。ユーザーがキャッシュされたレコード以外をスクロールしようとした場合、AJAX は次のレコード バッチを要求して表示します。
- 遅延 モード - ユーザーは仮想スクロールバーを使用して列をスクロールできます。ただし、ユーザーがスクロールをやめたときに WebDataGrid はスクロールバーのある位置のみにジャンプできます。これによって、スクロール中の AJAX 要求を防ぐことが可能となります。ユーザーがスクロールしている間、1 行目のインデックスがツールチップで表示されるため、ユーザーは何行目をスクロールしているのかが簡単に知ることができま。
WebDataGrid は、アプリケーションの UX スタイルに基づいてパフォーマンスの調整ができるを新しいプロパティを提供します。たとえば、ユーザー操作が数画面のデータしか必要ない場合、WebDataGrid で列をあらかじめプルダウンすることも可能です。そうすることにより、ほとんどのユーザーは非同期要求をする必要がなくなります。
自動検出エディター
WebDataGrid は、列の編集が可能な場合、列の DataType に基づいて自動的にエディター プロバイダーを検出してその列に設定します。WebDateTimeEditor は DateTime 型の列に関連付いています。また、WebNumericEditor は数値型の列を関連ついています。これらの機能のためにコードを書く必要はありません。ページにあるデータグリッドの数に関係なくエディター プロバイダーのセットを共有します。これにより、最小のオーバーヘッドですばやく描画されます。
クライアント側イベント
クライアント側操作をますます快適にする新しいクライアント側イベントが追加されました。キーボード、マウス、コンテキスト メニュー動作に対応した新しいクライアント側イベントです。

列の非表示
WebDataGrid はクライアント側またはサーバー側で列を非表示にすることが可能です。たとえば、ユーザーには意味のない機械可読なキー値を含む列などをビューで非表示にすることが可能です。値はクライアント側で描画されるため、非表示フィールドはコードからアクセスすることが可能です。ただしユーザーインターフェイスには表示されません。
WebScheduleGenericDataProvider™ - NEW!
This new addition to the WebSchedule™ のコントロール ファミリーに追加された新しいコントロールです。独自のスキーマと一緒に任意のデータソースを簡単に使用して、WebSchedule ビューや異なるデータソース (リレーショナル データベースのデータと XML ドキュメントからの他のデータがある場合など) を組み合わせたデータへ結合するデータ プロバイダー コントロールです。ASP.NET DataSource コントロール、カスタム コレクションおよび DataTable、DataView や DataSet の ADO.NET オブジェクトをサポートします。

追加データ フィールドへ簡単にアクセス
WebScheduleGenericDataProvider は、各データフィールドに DataSource/DataSourceID プロパティを設定してサポート データ ソースからデータを読み込むことが可能です。Activity (Appointment など) や Resource オブジェクトなどの新しい DataRow プロパティへアクセスして、データソースを介して元になるレコードから必要なデータを読み込むことが可能となります。これらのオブジェクトにマップされてないフィールドがある場合も読み込むことができます。これによって、スキーマの追加列をランタイムで表示することが可能となります。
定期的な予定をフラット化
WebScheduleGenericDataProvider は、エンティティの処理を削減するために RecurrencePattern と呼ばれる Activity に 1 プロパティを保存して Activity-to-Recurrence 関係を簡素化しました。
RecurrencePattern は、ルート アクティビティでの読み込み、更新、削除が可能な varchar() array (string) データ値の繰り返しに必要なすべての情報をエンコードしています。WebScheduleGenericDataProvider によって読み込み/書き込みされたデータは RecurrencePattern を使用する必要があります。RecurrencePattern のエンコード方法は、ヘルプの API に関するセクションをご覧ください。
WebSchedule™ - 強化
WebSchedule には、上記のジェネリック データプロバイダー以外にもよく使用される機能を追加しました。ASP.NET スケジュール機能は特にユーザーに人気のある機能です。
複数日イベント バナー
WebDayView™ と WebMonthView™ を使用して、コントロールの終日イベント領域に複数日に及ぶイベントバナーを表示できます。複数日イベントの最適化されたレイアウトは、スペースを無駄なく使用することができます。また、WebSchedule でイベントが表示領域外に及ぶ場合、イベント バナーは矢印で開始時刻/終了時刻を表示ます・

予定ビューのマルチリソース
WebDayView および WebMonthView では複数のリソースを同じ WebSchedule ビューで同時に表示することが可能となりました。リソースのスケジュールがリソースは、予定を設定される人、場所、または物のことです。例えば、リソースは会社員、会議室、A/V 装置などです。特定のリソースを有効にしてリソースのアクティビティをアクティブ スタイルで表示されます。その他すべての繰り返しは、非アクティブ スタイルで表示されます。デフォルトでは Microsoft Outlook® 2007カラースキーマが使用されますが、リソースに使用するスタイルをカスタマイズすることも可能です。

拡張されたブラウザー サポート
WebSchedule は、Microsoft Internet Explorer® 8、Safari 4、Google® Chrome™ 2.0、および Mozilla® Firefox® 3.5 に対応しています。
注: WebSchedule 9.2 SQL データ ベースのストアド プロシージャは変更されています。 Microsoft SQL Server® のWebSchedule データベース 2009 Volume 2 以前のバージョンをご使用の場合には、最新版の WebSchedule コントロールを正しく動作させるために Upgrade2to9.2.sql スクリプトを実行してデータベースのプロシージャーを更新する必要があります。
WebDataTree™ - 強化
拡張された ASP.NET AJAX ツリー コントロールでは、ツリー ノードのチェックボックスの自動チェックを無効にすることが可能です。たとえば、ユーザーが WebDataTree で子ノードをチェックした場合に自動的にその親ノードが部分的、または親ノードに子ノードが 1 つだけ存在するような場合には完全にチェックされていました。このリリースではこの機能が更に拡張され、ツリー ノードのチェックボックスの自動チェックを必要に応じて無効にすることが可能となりました。

WebDropDown™ - 強化
新しい AutoSelectOnMatch プロパティをWebDropDown コントロールに追加しました。この機能は、値が一致したときの自動選択を有効/無効にすることができます。
AJAX インジケーター – NEW!
AJAX インジケーターはカスタマイズ可能なアニメーション インジケーターを使って、実行時間が長くなる可能性のある データの更新、サイズの大きいファイルの読み込み、構成設定の更新などの AJAX 処理に使用できます。この機能は WebDataGrid、WebHierarchicalDataGrid,、WebDataTree、WebDropDown にも組み込まれています。コントロールがモーダルになるため、長時間に及ぶ AJAX 処理がが完了するまで基のコントロールやページを中断できます。AJAX インジケーターをアプリケーションの好きなページで使用することができるようになりました。

すべての ASP.NET AJAX コントロール– 強化
Aikido フレームワーク上に構築されたすべての コントロールを拡張したことにより、Javascript サポートを最小現にとどめています。この方法によりフットプリントを縮小しながら、パフォーマンスを向上することができます。たとえば、100KB スクリプト ファイルは 70 KB に圧縮できるため、読み込みの 30% を削減することができました。
すべての ASP.NET AJAX コントロールにおいて Microsoft Internet Explorer 8、Safari 4、Google Chrome 2.0、Mozilla Firefox 3.5 をサポートしています。
以前にリリースされた製品の機能
NetAdvantage ASP.NET コントロールに新しい機能が各リリースで追加されています。以前にリリースされた製品の機能の詳細、または付属ヘルプの「新機能」セクションをご覧ください。
サブスクリプションの更新について