DataGridに列も行も動的なデータをBindするには?

ということを結構以前から悩んでいました。

DataGridにバインドするためだけに例え匿名クラスであっても作りたくない!!

ふつうにやると、動的な列をもつクラスのCollectionは、↓こんな感じになってしまう!!!

それを解消する方法が、
http://blog.bodurov.com/How-to-Bind-Silverlight-DataGrid-From-IEnumerable-of-IDictionary
にありました!!

これを使えば、Distionary型で管理された列データを持つCollectionを、
自動的にDataGridにBind可能です。

また、TwoWayのBindに必要な、INotifyPropertyChangedをサポートしたObservableCollectionも説明されてます。
というか、最初からこちらのコードを使ったほうが便利です。


1つのコードの中に閉じ込めただけで、結局動的にクラスを作り出すところは変わらないんですが、自分で記述するコードが少なくなるという点でオススメです。