DataGrid内で、ViewModelの特定の条件に従って行の色を変更したいと思います。DataGridCheckboxColumn to DataGridTemplateColumn
これはWPFでは簡単な作業ですが、Silverlightではスタイル定義内のプロパティにBindingsを設定することはできませんが、DataGridのRowBackgroundを利用することはできません。
代わりにDataGridTextColumnからDataGridTemplateColumnに各列ヘッダーを変更し、そこにグリッドでラップされた独自のテキストボックスを作成する必要がありました。そこで私はViewModel内の背景色を条件付き色の選択にバインドします。
これはすべて問題なく動作します。しかし、DataGridCheckboxColumnをDataGridTemplateColumnに複製しようとすると問題が発生します。また、ここで私はグリッド内のチェックボックスを作成し、それに応じて色を設定することができます。データグリッドがReadonlyに設定されていてもチェックボックスをオン/オフすることもできます。チェックボックスは、DataGridの読み取り専用状態を気にしていないようです。
<sdk:DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<Grid>
<CheckBox HorizontalAlignment="Center" VerticalAlignment="Center">
<CheckBox.IsChecked>
<Binding Path=Sales Mode="TwoWays"/>
<CheckBox.IsChecked>
</CheckBox>
</Grid>
</DataTemplate>
</sdk:DataGridTemplateColumn.CellTemplate>
私はSilverlightで何を達成しようとしているのですか?
多くのおかげで、
解決のためにも、この記事をチェックしてください。http://stackoverflow.com/questions/6464445/odd-behaviour-when-replacing-datagridcheckboxcolumn-with-a -datagridtemplatecolumn – Houman