February 22, 2009

SilverlightのDataGridの簡単なサンプル

Silverlight 2.0でDataGridを使った例。


テキストボックスに文字や数字を入れてAddをクリックするとデータの追加。任意のデータを選んでRemoveをクリックするとデータの削除。

SilverlightでDataGridを使うために から随分たったけど。


ソースファイルは以下。
Download SilverlightDataGrid.zip (24.2K)


Page.xaml
  • 8〜17行目でDataGridを設置した。
  • 4行目で名前空間を xmlns:my="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Data" としたので、<my:DataGrid>としている。
  • Page.xaml.csのなかで表示用のDataクラスで3つのプロパティ Name、Age、Available をつくり、そのリストをデータソースに指定した。
  • 9~16行目の<my:datagrid.columns>~</my:DataGrid.Columns>内で各列について設定。ここではDataGridTextColumnとDataGridCheckBoxColumnをつかった。作成した表示用のクラスのプロパティに対応させて、たとえば Binding="{Binding Name}" とバインディングするように指定。



Page.xaml.cs

1 comment:

  1. はじめまして、このサンプルものすごく役に立ちました。

    質問なんですが、javascript側(要するにHTML上のボタン押下によるきっかけで)からC#内の関数に値をわたして、そこから表の更新を行うと、まったく更新されません。

    コレクションにもデータが追加されるのにも関わらず add しても何も起こらないんですよ。

    何か再描画等のメソッドを呼ばなくてはならないとか、強制的にコミットしなければならないとか、しなければならないんでしょうか?

    ReplyDelete