ASP.NET AJAX コントロール CSOM(クライアント側オブジェクト モデル)コード スニペット:CSOM ヘルプの使い方

この記事では NetAdvantage ASP.NET AJAX コントロールの CSOM(クライアント側 オブジェクト モデル) についての API ドキュメントをご紹介します。CSOM を使用してクライアント側イベントの処理を行い、直接クライアント側オブジェクトを操作することでアプリケーションのデザインや構築をもっとエレガントにしていきましょう。

クライアント側イベント

NetAdvantage ASP.NET AJAX コントロールにはクライアント側イベントの設定をするたくさんの String 型プロパティがあります。これらのプロパティにはクライアント側でコントロールのイベントが発生する際に呼ばれる JavaScript 関数の名前が設定されます。ヘルプ API ガイドにはクライアント側イベントを表すサーバー側プロパティが明記されています。

以下の方法でヘルプ上のクライアント側イベントについての記事にたどり着くことができます。(ここでは WebDropDown コントロールを例にとって説明します)

  1. まず NetAdvantage ASP.NET のオンライン ヘルプを開きます。http://help.jp.infragistics.com/NetAdvantage/ASP.NET/2010.1/CLR3.5/
  2. 目次から API リファレンス ガイドを 見つけます。

    image

  3. Infragistics.Web アセンブリの項目を展開します。

    image

  4. Infragistics.Web.UI.ListControls 名前空間の項目を展開します。

    image

  5. [クラス] 項目を展開して、その中の WebDropDown とそのプロパティ項目を展開します。

    image

  6. ClientEvents プロパティをクリックして展開します。

    image

  7. ClientEvents プロパティの API 記事には WebDropDown コントロールの ClientEvents プロパティをあらわす型、DropDownClientEvents が明記されています。このリンクをクリックして DropDownClientEvents API 記事を表示させます。

    image

  8. DropDownClientEvents クラスの API 記事が表示されたら、 Members トピックをクリックします。

    image

  9. DropDownClientEvents クラス メンバ のリストが表示されます。このリストには WebDropDown コントロールに関連する、クライアント側イベントを表す WebDropDown のサーバー側プロパティが明記されています。一例として、ActivationChanged プロパティをクリックしてみましょう。

    image

  10. ActivationChanged プロパティの記事には、C# と VB.NET を使用してこのイベントをつなげる方法と、JavaScript 関数のシグネチャ、そしてイベントの引数のクライアント側での使用方法が書かれています。

    image

この方法で、NetAdvantage ASP.NET コントロールの クライアント側 CSOM の関連記事にアクセスすることができます。

ASP.NET AJAX ではクライアント側でもさまざまな機能が用意されていますので、CSOM をどんどん活用してみてはいかがでしょうか?

SharePoint 2010 開発環境

VS 2010 に引き続き Office 2010 がリリースされましたが、同時に SharePoint も 2010 に引き上げられました。

US のほうではすでに Virtual Launch イベントと称してキーノートやセッションが配信されていますが、日本では5月28日に SharePoint Conference 2010 が行われるようです。

さまざまな機能拡張に加えて開発者にうれしい変更のひとつとしてVista/Win7(Professional 以上) のクライアントマシンでの開発環境が整備できる点があげられます。

ベータ版の時からすでに方法は MSDN などで公表されていましたが、実際にやってみたところ案外シンプルにできます。

(注:Vista/Win7 はあくまでも開発環境で、本番用には使用しないでのことですので、気をつけましょう)

手順はこちらから:

Setting Up the Development Environment for SharePoint 2010 on Windows Vista, Windows 7, and Windows Server 2008 (英語)

基本的にはインストールに必要なファイルを展開して、クライアントマシンへのインストールを許可するごとく config ファイルを変更。そしてインストールです。

ただし、必須となるほかのソフトウェアをきちんと入れないとインストールが正しく終了しませんので気をつけましょう。

また、場合によってはインストール直後にエラーが出たら一回再起動してインストールを修復してあげるとさっくりいくようです。

SharePoint Developer Center (日本語)

注意:Windows7 の場合、Professional 以上でないと IIS のセキュリティ設定項目が足りず、インストールとサイトの設定自体は成功しますが、サイトにアクセスしてみると空ページが表示されるだけになり、管理サイトにもアクセスできません。

WebDataGrid ビデオシリーズ : WebDataGrid の AutoCRUD 機能を使用する

このビデオでは WebDataGrid の AutoCRUD 機能の設定方法をご紹介します。AutoCRUD 機能を有効にすることで、グリッドがバインドするデータソースを自動解析し、CRUD(Create、Read、Update、Delete)処理を簡単に実装することができます。

ダウンロードはこちらから(SettingUpWDGAutoCRUD.wmv - 17MB

ご注意:本ビデオシリーズにはインフラジスティックスの英語版ビデオに日本語字幕解説が入っております。字幕を見る際には Windows Media Player の[再生]メニューより、[歌詞、キャプション、および字幕]を[利用できる場合はオン]に設定して字幕を表示させてください。

NetAdvantage Web Client ASP.NET 2010 vol. 1 リリースしました! 新機能紹介

先週、先々週と 弊社 Developer Days 7 でも紹介されたように、今週 NetAdvantage Web Client 2010 vol. 1 がリリースされました。以前のブログでもお伝えした通り、ASP.NET 製品は本リリースより完全 ASP.NET AJAX 対応となりました。尚 2011 vol. 1 リリースまでは WebGrid などの従来のコントロール(「クラッシック」ASP.NET コントロール)も製品に同梱されます。

2010 vol. 1 でもいくつか新しいコントロールおよび機能が追加されましたのでご紹介していきたいと思います。

2010 vol. 1 で追加された新コントロールと機能

WebExplorerBar

Windows Vista® のエクスプローラー バーや Microsoft Outlook® のアウトルック バー機能を再現。もちろん AJAX ロードオンデマンド対応。

webexplorerbar webexplorerbar2

WebTab

よく使用されるタブコントロールが ASP.NET AJAX 化されました。タブ ヘッダーへの画像の追加や表示・非表示の制御など機能アップ。

webtab

AJAX 圧縮モジュール

サーバーで生成された AJAX リクエストを GZIP 圧縮することでリクエストのサイズ縮小。より高速な通信を実現。

WebHierarchicalDataGrid グループ化

ユーザーにグループ化インターフェイスを提供することでより使いやすくなりました。比較演算やグループ化行テキストのカスタマイズも可能。

whdg-groupby2 whdg-groupby1

WebDataGrid の DataViewState と ViewState

本記事のまとめ

  • DataViewState (デフォルトで無効)は行コレクションの情報のみを保持
  • ViewState はその他全ての情報を保持

はじめに

ASP.NET の ViewState についてはいろいろな見解がありますが、近年では ViewState というコンセプト自体について細かいところにまで賛否の声があり、とくに使用に関しては批判の声があがることも少なくもありません。

ViewState を正しく使用することでパフォーマンス向上に役立てることも可能ですし、開発上の生産性向上に役立つ点もいくつかあります。この記事では WebDataGrid の ViewState に関連する2つのプロパティ、EnableDataViewState と EnableViewState プロパティについて説明していきます。

追記:VewState の動作と仕組みついての基本的な知識を身につけるため、以下の記事を読まれることをお勧めします。

DataViewState について

データ用 ViewState というコンセプトは ViewState が正しく取り扱われるようにというインフラジスティックスのエンジニア達の想いから生まれました。通常 ASP.NET コントロールはコントロールのほぼ全てのプロパティの値を ViewState に格納します。WebDataGrid ではグリッドの全てのデータを HTML と ViewState に格納するのではなく、データとグリッドのプロパティを別々の場所に格納するよう設計されています。このため、グリッドの行コレクションの情報のみが DataViewState という入れ物に格納されます。データが明示的なリクエストの際に ViewState に含まれるよう、EnableDataViewState プロパティはデフォルトで false に設定されています。

注:ページング機能が有効な際に DataViewState プロパティが有効にされると、現在表示中ページの行コレクションのみが ViewState コンテナー内で追跡されます。

image

ViewState について

WebDataGrid の ViewState には行コレクションの情報は格納されませんが、CSS スタイル設定や行のメタデータは格納されます。このため行がカスタマイズされると、それらのデータは DataViewState には格納されませんが、変更された設定は ViewState に保持されます。これによってページ上に保持される ViewState の量を縮小することが可能になります。

デフォルトでは EnableViewState プロパティは true に設定されています。

image

WebDataGrid ビデオシリーズ: WebDataGrid の CRUD 機能

このビデオでは数少ない工程でデータの追加、編集、削除機能を WebDataGrid に実装する方法を紹介します。また、ユーザーがスムーズに操作できるようなバッチ更新処理と AJAX を使ったインタラクションを追加する方法も紹介しています。

ダウンロードはこちらから(IntroductionToWDGCRUDBehaviors.wmv - 40MB

ご注意:本ビデオシリーズにはインフラジスティックスの英語版ビデオに日本語字幕解説が入っております。字幕を見る際には Windows Media Player の[再生]メニューより、[歌詞、キャプション、および字幕]を[利用できる場合はオン]に設定して字幕を表示させてください

WebDataGrid 初級編その1:グリッドにデータを追加して、外観を変更してみる

この記事では WebDataGrid を使用する際の基本事項を紹介していきます。グリッドをデータにバインドしたり、列をカスタマイズしてみたり、グリッドのルックアンドフィールを変える、そんなことをしてみましょう。

The Basics - 基礎

まずは ScriptManager をページに追加します。グリッドの機能に使用されるスクリプトファイルのロードおよび処理を受け持つ ScriptManager コントロールは WebDataGrid 使用に必須です。WebDataGrid では Pay-to-Play というアーキテクチャを採用し、グリッド上で有効化されている機能に必要なスクリプトのみクライアント側にロードされるようになっています。

NetAdvantage ツールセットをインストールしてツールボックスにコントロールを追加したら、WebDataGrid をデザイン画面にドラッグアンドドロップで配置します。下記のようにデザイン画面に表示されるはずです。

designer

データをバインド

WebDataGrid にデータを提供する方法はいくつかあります。ここではコードビハインドから複数の Person クラスにバインドするシンプルな例を使用します。

custom-list-code 

注:上記のサンプルではデモ用に nBuilder というフレームワークを使用して Person クラスのインスタンスを作成しています。実際のアプリケーションではデータはビジネスロジックのレイヤー、サービス、あるいはデータアクセスのレイヤーから直接提供されるでしょう。

列のカスタマイズ

次にグリッドの列を定義します。 WebDataGrid では列の自動生成がサポートされていますが、この機能はプロトタイプやデモとして使用され、フォーマルなアプリケーションでは各列の明示的な定義が必要となると思われます。

列の設定はまずデザイナー上でグリッドをクリックして、コントロールの右上の小さな矢印をクリックすることから始まります。この矢印はスマートタグを起動します。スマートタグが表示されたら[列の編集]をクリックします。

 image

このリンクをクリックするとグリッドの列を管理するのに使用する列の編集ダイアログが起動します。起動後まずダイアログの下部分にあるフィールドを自動的に作成するのチェックを外します。この機能を無効にすることで明示的に定義された列のみがグリッドにレンダリングされるようになります。

列には BoundFields(バインドされたフィールド) と TemplateFields(テンプレート フィールド) の2つの種類があります。バインドされたフィールドでは必要な設定をいくつか入力するだけであとは自動的にデータソースからのデータがグリッドにレンダリングされます。下のスクリーンショットではバインドされたフィールドが動作するのに必要な最低限の項目がハイライトされています。

Grid Column Editor Dialog

テンプレート フィールドでは列にレンダリングされるコンテンツとレイアウトがよりフレキシブルになっています。バインドされたフィールドでは対照的に編集ダイアログで設定される範囲でしかレンダリングがされません。バインドされたフィールドをテンプレート フィールドに変換するにはエディター上でフィールドを選択し、選択したグリッド フィールドをテンプレート フィールドに変換するをクリックします。

いくつかグリッドの列を作成したら、ページを実行してみてください。下のスクリーンショットのようなグリッドが表示されるはずです。

grid-with-data

グリッドの外観を変えてみる

WebDataGrid のルックアンドフィールを様々に変更できるよう、NetAdvantage ツールセットには多くのスタイルセットが同梱されています。スタイルを適用するにはまず Visual Studio デザイナーからグリッドをクリックして、プロパティ ウィンドウを開きます。グリッドのプロパティ リストを下のほうまでスクロールしていくと、StyleSetName という項目があるはずです。この項目のドロップダウンリストをクリックすると、グリッドをスタイルするためのいくつかのオプションが表示されます。スタイル関連では以下のことが設定可能です:

  • デフォルトスタイルの選択
  • 既存のスタイルを選択
  • 新しいスタイルをインポート

StyleSetName Property

デフォルトあるいは既存のスタイルはタイトルを選択するだけで適用されます。既存のスタイルをインポートしたい場合にはインポートのオプションを選択すると、スタイルセットのインポートダイアログが表示されるのでアプリケーションにインポートするスタイルを指定します。

image

ここでは Office2007Silver セットを適用してみます。ページを実行するとグリッドは下記のスクリーンショットのように表示されるまずです。

styled-grid

参考資料

ソースコードをダウンロード(英語)

The Future of NetAdvantage ASP.NET – NetAdvantage ASP.NET 2010 vol. 1 で何かが変わる!?

現在 NetAdvantage ASP.NET 製品は ASP.NET と ASP.NET AJAX コントロールに分かれているのは皆さんご存知ですよね。(ASP.NET AJAX コントロールについて詳しいことは以前のブログ記事でも書いておりますので、復習がてら読んでくださいね。)

2008 vol. 1 から始まり、現行の 2009 vol. 2 にいたるまでに様々なコントロールが ASP.NET AJAX ファミリーに追加されてきましたが、実は NetAdvantage ASP.NET AJAX コントロールの要となるフレームワーク(Aikido フレームワーク)は 2007 年より開発が進められてきています。 ASP.NET AJAX フレームワークをフル活用して一から再デザインされた全てのコントロールには、もちろん ASP.NET コントロールで培われたノウハウがぎっしり詰まっています。

次期リリースの 2010 vol. 1 では主要な ASP.NET AJAX コントロールが出揃い、「クラシック」 ASP.NET コントロールと同等あるいはそれ以上の機能を提供できるようになったため、NetAdvantage ASP.NET 製品では以下の様な変更が適用されることになりました。

①ASP.NET ツールセットの変更について

一部を除く WebGrid、UltraWebTab 等の 「クラシック」 ASP.NET コントロールは 2010 vol. 1 より NetAdvantage ASP.NET をインストールした際には Visual Studio のツールボックスに追加されず、ツールセットとしては以下のコントロールが NetAdvantage ASP.NET 製品でのご提供となります。リタイアされる ASP.NET コントロールは ASP.NET AJAX コントロールによって同等の機能が提供されます。

2010 vol. 1 以降の NetAdvantage ASP.NET ツールセット

  • WebDataGrid
  • WebHierarchicalDataGrid
  • WebDatePicker
  • WebMonthCalendar
  • WebTab
  • WebExplorerBar
  • WebEditors
    • WebTextEditor
    • WebMaskEditor
    • WebNumericEditor
    • WebDateTimeEditor
    • WebPercentEditor
    • WebCurrencyEditor
  • WebDataMenu
  • WebDataTree
  • WebProgressBar
  • WebDropDown
  • WebDialogWindow
  • WebSplitter
  • WebImageViewer
  • WebSlider
  • WebHierarchicalDataSource
  • WebGauge
  • WebChart
  • WebSchedule
    • WebDayView
    • WebMonthView
    • WebCalendarView
  • WebImageButton
  • WebCalcManager
  • WebSpellChecker
  • WebHTMLEditor
  • WebResizingExtender
  • (その他 2010 vol. 1 以降に追加されるコントロール)

    2010 vol. 1 リリース時点でリタイアとなるコントロール

    • WebGrid
    • WebCombo
    • WebDateChooser
    • WebListBar
    • WebCalendar
    • WebToolbar
    • UltraWebTab
    • WebDataInput
      • WebTextEdit
      • WebMaskEdit
      • WebNumericEdit
      • WebDateTimeEdit
      • WebPercentEdit
      • WebCurrencyEdit
    • WebMenu
    • WebTree
    • WARP Panel
    • WebPanel
    • WebNavBar
    • WebWeekView
    • WebGridExcelExporter
    • WebGridDocumentExporter

    ②リタイアされる ASP.NET コントロールの 2010 vol. 1 以降の扱いについて

    2010 vol. 1 から WebGrid、UltraWebTab 等のリタイアされる ASP.NET コントロールについては以下の様な対応が予定されています。

    リタイアされるコントロールの提供

    2010 vol. 1 リリースより、「ツールボックスタブの作成」ユーティリティを実行しても、これらのコントロールは Visual Studio のツールボックスに追加されません。

    ただし、2011 vol. 1 リリースまではツールボックスに追加されないコントロールのアセンブリ自体は製品に同梱されインストールされますので、使用する際には必要なアセンブリの参照を Web アプリケーションに追加するあるいはツールボックスに手動で追加することで使用可能です。

    尚 2011 vol. 1 リリース以降ではリタイアされるコントロールのアセンブリは製品に同梱されません。

    リタイアされるコントロールのメンテナンス

    2010 vol. 1 よりリタイアされるコントロールに対しての不具合の修正は通常のサービスリリースにおいて 2011 vol. 1 リリースのメンテナンス期間終了まで行われます(2011 vol. 1 リリース後約1年間)

    尚 2010 vol. 1 よりこれらのコントロールへの機能追加、ならびに新しいバージョンのブラウザーや OS への対応は行われませんが、ASP.NET AJAX コントロールの新しいバージョンへの対応は引き続き行われます。

    ③今後のコントロールについて

    今回の様な製品からのコントロールのリタイアは予定されていません。インフラジスティックスではこのような製品の仕様変更が開発者の皆様に及ぼす影響を理解したうえで今回の ASP.NET コントロールのリタイアを実施することにしました。もちろん、「クラシック」 ASP.NET コントロールから ASP.NET AJAX コントロールへの移行に従いぶつかる問題もあることかと思われますので、その際には弊社サポートまでお気軽にご連絡ください。

    「クラシック」 ASP.NET コントロールと ASP.NET AJAX コントロール(または同等機能)の対応表は以下の通りです。

    「クラシック」 ASP.NET コントロール

    ASP.NET AJAX コントロール/代用コントロール

    WebGrid

    WebDataGrid , WebHierarchicalDataGrid

    WebCombo

    WebDropDown

    WebDateChooser

    WebDatePicker

    WebListBar

    WebExplorerBar

    WebCalendar

    WebMonthCalendar

    WebToolbar

    WebDataMenu

    UltraWebTab

    WebTab

    WebTextEdit

    WebTextEditor

    WebMaskEdit

    WebMaskEditor

    WebNumericEdit

    WebNumericEditor

    WebDateTimeEdit

    WebDateTimeEditor

    WebPercentEdit

    WebPercentEditor

    WebCurrencyEdit

    WebCurrencyEditor

    WebMenu

    WebDataMenu

    WebTree

    WebDataTree

    WARP Panel

    Microsoft UpdatePanel

    WebPanel

    WebExplorerBar

    WebNavBar

    WebDataGrid カスタム ページャー テンプレート

    WebWeekView

    Microsoft Outlook でサポートされない古い UI

    WebGridExcelExporter

    Excel API

    WebGridDocumentExporter

    PDF API

    今回の変更は製品をより新しいテクノロジーに対応させる為の試みの一つです。インフラジスティックスでは RIA 用途をターゲットとする新しいコントロールとともに、新しいブラウザやエンタープライズ向けアプリケーションをターゲットとするハイパフォーマンスなコントロールもリリースすることでこれからも ASP.NET 製品に注力していきます。

    「こんなコントロールがあったら・・・」などという声がありましたら、是非お聞かせ下さい

  • Posted: 09 Mar 2010, 13:58 | 2 Comments
    Filed under: , , ,
    まもなく TechDays 2010 です!

    まだまだ寒く雪がちらほら降る東京ですが、寒さに負けてはいられません。

    なぜなら来週23、24日にお台場で開催される TechDays 2010 があるから!

    Silverlight 4 や Windows 7 開発のセッションもホットなのですが、個人的には ASP.NET MVC 2、 SharePoint Server 2010、そして Windows Azure のセッションも面白そうだなと思ってます。業務の都合で1日しか行けませんが、セッションをいくつか見れたらなあと今策略を練っております。

    ふふふ。

    ところで TechDays をはじめとするマイクロソフトのイベントと言えば欠かせないのがベンダーのブース。もちろん我々インフラジスティックスも出展します。

    ブースでは NetAdvantage の各プラットフォーム製品をごらんいただくのはもちろんのこと、先日リリースされました UX デザイン パターン エクスプローラー Quince (クインス)に実際に触れていただけます。去年の Remix でお披露目した Quince ですが、完全日本語版なんです!

    (Quince についての詳細は弊社エバンジェリスト池原のブログにあります)

    で、インフラジスティックスのブースによるといいことが・・・と弊社山田と池原が書いていますが、何が起こるかは私には知らされていません(悲)

    でもここで新しい情報が!(喜)

    みなさん Twitter してますよね?今回は TechDays だけのキャンペーンとして、Twitter で @IGJP をフォローすると・・・

    ・・・IGJP からステキなつぶやきが送られてくるそうです。

    ステキつぶやきの中には Twitter 上だけで告知される「豪華」プレゼント情報もあるそうなので、ぜひフォローしてみてください。

    ステキなつぶやきは http://twitter.com/igjp からアクセス!

    みなさまのご来場をお待ちしております。プレゼントあたるといいですね!

    See you all at TechDays!

    NetAdvantage Web Client 2009 vol. 2 リリースしました![連載その3.5] - 新機能紹介ビデオ

    NetAdvantage ASP.NET 2009 vol. 2 のご紹介を続ける前に最近どどどんと起こった二つ目のお知らせです!

    ご紹介を終える前に製品がリリースされました!!!

    喜ぶべきことなのですが、今回のリリースは新コントロールと機能拡張がたくさんありまして、紹介が追いついていませんでした orz

    でも!でも!です・・・インフラジスティックスのコミュニティサイト(覚えてますか?)にこんな映像が:

    ASP.NET 2009 Vol. 2 新機能

    紹介記事の連載より一足先に新機能を見てみたい!という方は是非こちらのビデオをご覧ください。

    NetAdvantage ASP.NET 2009 vol.2 についての過去の紹介記事は下記のリンクよりご覧ください。

    その1 - 新コントロール/機能拡張一覧

    その2 – WebHierarchicalDataGrid

    その3 – WebDataGrid の機能拡張

    NetAdvantage ASP.NET 2009 vol. 2 リリース記念!(旧:リリース前)[その3] – WebDataGrid の機能拡張

    さて今回のリリースでは WebHierarchicalDataGrid に華を持っていかれてしまった感のある WebDataGrid ですが、WebDataGrid にも機能拡張がされています。

    列固定と列の非表示

    エクセルなどでおなじみの固定列機能は NetAdvantage の他プラットフォームで先行して左右配置が提供されていましたが、2009 vol. 2 から WebDataGrid でも採用されるようになりました。

    左右両方の列固定

    もちろんクライアント側とサーバー側の両方で設定をすることが可能なため、ユーザーに任意の列を固定させたり(ヘッダ上のピンボタン)、コードから明示的に特定の列を固定させておく等様々な使い方が可能です。

    また特定の列を非表示にすることも可能になっています。

    エディターの自動検出機能

    WebDataGrid ではエディタープロバイダーと呼ばれる機能を使用して各列の編集に使用されるエディタを設定しますが、2009 vol.2 では各列のデータの型に合ったエディタを自動検知してくれます。もちろん従来通りエディタープロバイダーを設定して使用することも可能です。

    エディターの自動検出

    仮想・遅延スクロール機能 と AJAXインジケーター

    こちらも WPF や Silverlight のデモでおなじみの機能ですが、AJAX フル活用の WebDataGrid でも提供されるようになりました。

    仮想スクロールではスクロールがされるに従ってロードオンデマンド機能によりデータが取得されていき、遅延スクロールではグリッドのスクロールバーを使って下の様なインデックスを表示させてレコードをナビゲートすることができます。ロードオンデマンドが起こるタイミングを制御するしきい値を設定することも可能です。

    遅延スクロール時のインデックス表示 AJAX インジケーター

    また仮想および遅延スクロールによって AJAX の非同期通信が行われている間に AJAX インジケーターを表示させてユーザーに視覚的フィードバックを与えることは、UX 向上に欠かせない機能の一つです。

    全ての ASP.NET AJAX コントロールでサポートされるこの AJAX インジケーターは以前は表示場所やアイコンだけでなく、アニメーション効果を細かく制御したり、コントロールの領域のみ、あるいはページ全体にインジケーターのエフェクトをかけるといった技も兼ね備えています。

    そのほかにもサンプルブラウザーに新しいサンプルがいくつか追加されていますので、実際に触れてみたい方はオンラインサンプルにアクセスするか、サンプルをダウンロードしてみてくださいね。

    次回は第4弾、WebEditors の機能強化についてです。

    NetAdvantage ASP.NET 2009 vol.2 についての過去の紹介記事は下記のリンクよりご覧ください。

    その1 - 新コントロール/機能拡張一覧 

    その2 - WebHierarchicalDataGrid

    NetAdvantage Web Client と SharePoint のホワイトペーパーができました

    前回のブログと間が空いてしまいましたが、その間にいろいろ勃発してしまいましたのでどどどーんと連続してお知らせします。

    NetAdvantage ASP.NET 2009 vol. 2 の紹介記事ももちろん続けますが・・・まず一つ目は、新しい SharePoint 関連のホワイトペーパーが出ました。

    「NetAdvantage ASP.NET / Silverlight と SharePoint の素晴らしい出会い! UX 向上のすゝめ」と題したこのホワイトペーパーでは実際に NetAdvantage Web Client のコンポーネントをなぜ、どうやって使用するか、必要なポイントについて解説しています。

    SharePoint でこんな UI ができればいいのに・・・でもどうやってやるの?という方に参考として読んでいただければ幸いです。

    是非ご一読ください。

    詳細とダウンロードはこちらから

    NetAdvantage ASP.NET 2009 vol.2 リリース前![その2] - WebHierarchicalDataGrid

    NetAdvantage ASP.NET 2009 vol.2 のご紹介第2弾は WebHierarchicalDataGrid です。

    とても長い名前のコントロールですが、DataGrid とついているからにはグリッド。でも WebDataGrid があるのに・・・?と思われた方もいらっしゃると思います。確かに WebDataGrid も 2009 vol. 2 で機能拡張が行われていますが、まだ追加されていない機能の一つが Hierarchical = 「階層」 です。

    ということで、WebDataGrid + Hierarchical = WebHierarchicalDataGrid すなわち階層グリッドです。

    新しい WebHierarchicalDataGrid

    コントロールの詳細についてお話しする前に、本リリースで WebDataGrid に階層化機能を追加しなかった理由について少しふれておきましょう。

    WebDataGrid の特徴として、各機能(動作/Behavior)が Pay to Play モデルとして提供されている点が挙げられますが、Pay to Play モデルでは選択された機能を実現するのに必要なリソース(コードやスクリプト)のみがグリッドに装備されます。これによりコンポーネントが軽量化され、パフォーマンスも向上するのですが、階層化機能に必要な処理を追加することで WebDataGrid の構造およびページに出力されるコードをシンプルかつ軽量に保つため、WebHierarchicalDataGrid として階層化データの扱いに特化したグリッドを提供することになりました。

    ですので、WebDataGrid はフラットなグリッドとして、WebHierarchicalDataGrid は階層化用グリッドとして用途に合わせた使い方をしていただくことが可能です。WebDataGrid のパフォーマンスや使い勝手はそのままに、階層化データを扱うことができるこのコントロールは 2009 vol. 2 リリースの一番のハイライトと言えます。

    WebHierarchicalGrid の設定方法は WebDataGrid と変わりませんが、バンドと呼ばれる各階層の設定機能が追加されています。[バンドの編集] ダイアログには階層の中のバンドが表示され、各列の設定や外観、動作等の様々な設定がバンド毎に設定できるようになっています。

    バンドの編集ダイアログ

    ADO.NET の DataRelation を設定したデータセットはもちろんのこと、WebHierarchicalDataSource と併用することで、階層データの作成から編集機能を備えた表示までを簡単に行うことが可能になりました。

    WebHierarchicalGrid の機能をまとめると以下の通りです。

    WebHierarchicalGrid の機能一覧

    データ表示

    • 複数の子バンド表示
    • 自己参照データの表示

    グリッド操作(親、子バンド両方に適用)

    • ソート
    • ページング
    • 編集
    • キーボードナビゲーション

    カスタマイズ

    • 展開・縮小時のアニメーション
    • テンプレート列
    • 列非表示

    その他

    • 自動 CRUD(Create, Read, Update, Delete)
    • 列エディタの自動感知
     複数の子バンド表示
    子バンドでのページング
    子バンドに異なるスタイリングの適用

    WebDataGrid でおなじみの機能がほとんどですが、実装されていない機能につきましては今後のリリースで追加され、WebHierarchicalDataGrid が機能強化されていくようになります。

    次回は第3弾、WebDataGrid の機能強化についてです。

    NetAdvantage ASP.NET 2009 vol.2 についての過去の紹介記事は下記のリンクよりご覧ください。

    その1 - 新コントロール/機能拡張一覧

    NetAdvantage ASP.NET 2009 vol.2 リリース前![その1]

    朝晩の冷え込みが始まり、いよいよ冬ですね。寒くなり始めても NetAdvantage はホットです。

    先日の Developer Days 6 のデモの中でちょこっとお披露目をさせていただいたのですが、 もうすぐリリースとなる NetAdvantage ASP.NET 2009 vol. 2 についてリリースまでに何回かに分けて新しいコンポーネントと追加機能をご紹介していきたいと思います。

    2008 vol. 1 より追加されてきた ASP.NET AJAX コントロールですが、今回のリリースでエディター系コントロールも出揃い、様々なニーズに対応したツールセットとしてさらに充実したラインナップになってきました。また、本リリースより全ての ASP.NET AJAX コントロールがマイクロソフト Windows 7 に対応しております。

    ASP.NET AJAX コントロールと AJAX 機能が含まれる ASP.NET コントロールについては過去のブログにてご紹介しておりますのでそちらをご覧ください。

    まずは新機能の一覧から。

    2009 vol. 2 で追加されたコントロール

    WebHierarchicalDataGrid
    • 複数の子バンド
    • 子バンド内ページング
    WebHierarchicalDataGrid では子バンド内でもページング機能を装備1つの親バンドに対して複数の子バンドを展開表示させることが可能
    WebEditors
    WebMaskEditor/WebDateTimeEditor/WebNumericEditor/WebCurrencyEditor/WebPercentEditor/WebTextEditor
    • カルチャー対応
    • ASP.NET 検証 コントロール使用可能
    ASP.NET AJAX 対応各種エディタ
    WebMonthcalendar
    • Vista スタイルのキーボードナビゲーションをサポート
    Vista スタイルのナビゲーションとルック アンド フィールを提供する WebMonthCalendar では日付の複数選択も可能
    WebDatePicker
    • コントロール領域あるいはページ全てを使用したビジュアル フィードバック
    • ASP.NET AJAX コントロールでフルサポート
    AJAX 通信が行われているときにユーザーに通信中のフィードバックを伝えることでユーザー エクスペリエンスの向上につながります
    WebScheduleGenericDataProvider
    GlobalAjaxIndicator

    2009 vol. 2 で機能拡張されたコントロール

    WebDataGrid
    • 列固定・非表示
    • 仮想・遅延スクロール
    WebDataGrid では新しく列の固定および非表示化の指定が可能に
    WebSchedule
    • 複数リソース表示
    • 複数日イベントバナー
    複数のリソース表示と複数日のイベントバナー採用でより Outlook に近く、使いやすくなった WebSchedule
    WebDataTree
    • 自動チェック機能制御
    WebDropDown
    • 自動選択機能制御

    次回からは各新コントロールおよび機能について掘り下げていきます。

    Developer Days 6 – Web Client セッション資料ダウンロード

    先日行われました Dveloper Days 6 での Web Client セッションで使用した Silverlight での SharePoint 検索アプリケーションのソースコードとセッションの資料です。

    セッション資料は事前ダウンロードにゲストスピーカーの溝端様のスライドおよびリソース関連の内容を追加したものになっております。

    NetAdvantage Web Client セッションスライド

    SharePoint 検索 Silverlight アプリケーション (ソースコード)

    SharePoint 検索デモ

    参加いただきました皆さま、本当にどうもありがとうございました! またご協力いただきましたソフトバンクBB様並びにゲストスピーカーの皆様にもお礼を申し上げます。

    ちなみに Developer Days では 毎回のごとく開場前に案内係に任命されるのですが、なぜか毎回セキュリティ呼ばれます。 orz

    会社のシャツ来てるんだけどなあ(汗)