私はC#を使用して.Net4.0を対象としたWPFプログラムを作成しています。私はMVVMパターンに従おうとしています。ここでは、ビュー(コードビハインド)に最小限のコードが含まれています。
をList<MyRecord>
使用してGUIに表示したいものがありますDataGrid
。私のXAMLには、次のものがあります。
<DataGrid x:Name="RecordGrid" ...>
<DataGrid.Columns>
<DataGridTextColumn Binding="{Binding RecId}" Header="Record ID"/>
<DataGridTextColumn Binding="{Binding Name}" Header="Name"/>
</DataGrid.Columns>
</DataGrid>
残っているのは、このグリッドをデータコレクションにバインドすることだけです。
コードビハインドファイルでバインドすると、正常に機能します。
RecordGrid.ItemsSource = MyRecordList;
ただし、XAMLで宣言的にバインドすることをお勧めします。だから私はこれを試しました:
<DataGrid x:Name="RecordGrid" ItemsSource="{Binding MyRecordList}" ...>
しかし、それは静かに機能しません。データグリッドのロード時にXAMLバインディングエラーメッセージは表示されません。MyRecordListのget
メソッドにブレークポイントを設定しましたが、ItemsSourceが宣言的に定義されている限り、ブレークポイントが呼び出されることはありません。
MyRecordList
XAML経由でデータグリッドをプルするにはどうすればよいですか?