お世話になっております。
VS2010SP1+SilverLight4でテスト用のアプリを作成しています。
テスト用というより、勉強中といったほうが正しいですが。
DataGridを作成していて、下記の動作になって困っています。
[現象]
DataGridをグループ化して作成し、のIsReadOnlyプロパティをTrueに設定すると、
DataGridのタイトルをクリックすしてソートした際に下記の例外が発生する。
「ハンドルされていない例外("Unhandled Error in SilverLight Application インデックスが範囲を超えています。
負でない値で、コレクションのサイズよりも小さくなければいけません。")
System.ThrowHelper.ThrowArgumentOutOfRangeException(ExceptionArgumentargument, ExceptionResource resource)」
[詳細]
下記のURLを参考に、DataGridだけ表示するサンプルを作成しました。
#1:http://thinkit.co.jp/story/2010/06/15/1600
#2:http://msdn.microsoft.com/ja-jp/library/ff407126.aspx
作成したソースは、#1のソースほぼそのままのため、省略いたします。
#1ではVBですが、C#で書いただけです。
また、#1のURLからサンプルPJがDLできますが、サンプルPJでも、DataGridのIsReadOnlyプロパティをTrueに
すると、同じ例外が発生しました。
ためしに、グループ化している
myCollectionViewSource.GroupDescriptions.Add(new PropertyGroupDescription("ほにゃらら"));
のコードをコメントアウトして実行したところ、例外は発生しませんでした。
ネットを検索してみたのですが、現在のところ、同様の現象が見つかっていません。
原因と解決法を教えていただけないでしょうか?よろしくお願いいたします。
勉強中のため、(ほかの回避方法も参考になりますが)本現象の原因を知りたいと思っています。