XamWebGrid のデータバインディング チュートリアル

0 ユーザーが評価
この投稿には確認済みの回答があります。 0 返信 | 1 サポーター

トップ 10 投稿者 
女性
投稿 22
IG Employee

このチュートリアルでは、NetAdvantage Silverlight Line of Business の XamWebGrid のデータバインディングの使用方法を紹介します。

 

グリッドは業務アプリケーションの重要なツールです。データバインディングはグリッドに不可欠であり、さまざまなデータソースを使用することができます。一般的なソースには SQL データベース、Access データベース、および XML ファイルなどがあります。XamWebGrid でデータを表示するために、列を自動的に作成することを有効できます。または、開発者が明示的に列を設定することも可能です。

以下の例では、グリッドに映画の情報を含む XML データソースをバインドします。各映画はカスタム オブジェクトで解析するために、Movie クラスを定義します。LINQ (クエリ言語) を使用して XML ファイルを Movie オブジェクトに解析し、グリッドに移植します。

 

1.  新しい Silverlight アプリケーションを作成します。

2.  ClientBin フォルダーに Movies.xml ファイルを追加します。

a. ソリューション エクスプローラーで、Web プロジェクトの ClientBin フォルダーを右クリックします。[追加] -> [既存の項目] を選択します。

 

b. Movies.xml ファイルを追加します。Movies.xml ファイルはこのトピックに添付されています。

c. Movies.xml ファイルはプロジェクトに含まれています。

 

3.  System.Xml.Linq アセンブリへの参照を追加します。また、Infragistics.Silverlight.v9.2 アセンブリへの参照も追加します。

a. C# プロジェクトの下にある参照設定フォルダーを右クリックします。[参照の追加] を選択します。

 

b. .NET タブで System.Xml.Linq アセンブリを選択して、OK をクリックします。

 

c. アセンブリは参照設定フォルダーに含まれています。

 

d. Infragistics.Silverlight.v9.2 アセンブリを追加するために、これらの手順をもう 1 度繰り返します。

4.  フォームに XamWebGrid を追加します。

a. MainPage.xaml で、XAML の <Grid> と </Grid> タグの間をクリックします。

b. ツールボックスで XamWebGrid コントロールを検索して選択してから、ダブルクリックします。項目がツールボックスにない場合、[ツール] -> [ツールボックス アイテムの選択] を選択します。Silverlight タブで、インストール フォルダーに参照して、Bin のすべての .dll ファイルを追加します。

5.  XamWebGrid の Name プロパティを myXamWebGrid に設定します。

  <igGrid:XamWebGrid Name="myXamWebGrid"></igGrid:XamWebGrid>

6.  XamWebGrid の AutoGenerateColumns プロパティを True に設定します。ファイルを保存します。

<igGrid:XamWebGrid Name="myXamWebGrid" AutoGenerateColumns="True"></igGrid:XamWebGrid>

7.  [表示] -> [コード] を選択して、MainPage.xaml.cs ページを表示します。ページの上に、Linq アセンブリの名前空間宣言を追加します。

using System.Xml.Linq;

8.  MainPage() コンストラクターの下で、Movie クラスを作成します。Title、RunningTime、と Rating の変数を追加します。

       public class Movie

       {

            public string Title { get; set; }

            public string RunningTime { get; set; }

            public string Rating { get; set; }

}

 

 

9.  MainPage() コンストラクターで InitializeComponent() の下に次のコードを追加して XML ファイルを ClientBin フォルダーから非同期的に読み込みます。ファイルの読み込みには WebClient が使用されます。ファイルを読み込んだ後で、次の手順で定義される XMLFileLoaded メソッドを呼び出します。      

            // 非同期的に XML ファイルを読み込む

            WebClient xmlClient = new WebClient();

            xmlClient.DownloadStringCompleted += new                                                   DownloadStringCompletedEventHandler(XMLFileLoaded);

            xmlClient.DownloadStringAsync(new Uri("Movies.xml", UriKind.RelativeOrAbsolute));

 

10.  MainPage() メソッドの下で XMLFileLoaded メソッドを定義します。  

 

void XMLFileLoaded(object sender, DownloadStringCompletedEventArgs e)

        {

            // DownloadStringAsync XML データを文字列に読み込みます

            string XmlString = e.Result;

 

            // XML ドキュメントに XML を解析します

            XDocument myDocument = XDocument.Parse(XmlString);

 

            // Movie としてデータを書式するために Linq クエリを使用します

            var q = from c in myDocument.Descendants("TopMovies")

                    select new Movie

                    {

                        Title = (string)c.Element("Title"),

                        RunningTime = (string)c.Element("Running_x0020_Time"),

                        Rating = (string)c.Element("Critics_x0020_Rating")

                    };

 

            // Movie コレクションを Grid のデータ ソースとしてバインドします

            myXamWebGrid.ItemsSource = q.ToList();

 

 }

 

11.  プロジェクトを保存し、ソリューションをビルドして実行します。プロジェクトを最初に実行するときに、データの読み込みに遅延が発生する場合があります

 

 

ページ 1 / 1 (1 項目) | RSS
Infragistics Japan
インフラジスティックス ジャパン