2011-09-10 4 views
0

をロードされた後は、状況です。数値がxより小さい場合は緑色になります。数字がyより大きい場合、赤色に着色されます。のSilverlightのDataGrid:</p> <p>1)私は数字で細胞を持っている:変更背景色を動的にそれはここで

2)データグリッドが読み込まれるときに、コンバータを使用して色を設定します。これは正常に動作します。

3)データソース内の数値の値をC#から変更し、その値がデータグリッド上で更新されます(表示されている場合)。

4)残念ながら、コンバーターは適切な色を設定しようとしていません。私が手動でDataGridのセルを編集すると、コンバータが起動します。

データグリッド内のセルを見つけて色をリセットできますが、変更後のスクロールに問題が発生します(期待どおり)。事前に

おかげで、

マイク

答えて

0

私のようなあなたに利用可能なオプションのカップルがあると信じて:あなたなら、私に知らせて、

1) invoking a property changed notification when the color is changed (for the property your converter is converting). 
2) invoking UpdateLayout() 
3) detaching and reattaching the items source 
4) saving scroll position, performing "find the cell in the datagrid and reset the color ", and then invoking a scroll to the saved scroll position. 

は、これらのワークアウトすべきではありませんItemsSourceまたはObservableCollectionとしてPagedCollectionViewを使用しています。

関連する問題