2011-12-07 29 views
0

こんにちは皆私は問題があります: WPF DataGridでは編集可能な列があり、この列はパーセント(%)で測定されています。この列の値の合計は100%を超えないようにしてください。 たとえば、グリッドに3行あり、この列に20%の20%60%の値があります。 合計は100%になります。ユーザーは60%を75%に変更することができます。 115%の場合、ユーザーは値を変更するとすべてのアイテムの合計を検証する方法がありますか? Standard ValidationRuleは1つのセルに対してのみ機能しますが、それは私を助けません。WPF DataGrid列のすべての項目を検証する方法は?

この問題の提案または解決方法を教えてください。

ありがとうございます。

+0

データ操作にRIAを使用していますか? –

答えて

1

DataGridのデータを検証する代わりに、DataGridCellの値が変更されたらデータソースを検証する必要があります。 DataGridDataSourceDataTableであるとします。セルの値がDataTableに戻り、すべての列の値が反復され、合計が100以下であることを確認します。

+0

はい、変更された値がデータソースに送信された場合、たとえばEscを押してEscを押すと、以前の値にロールバックされます。そのための – Serghei

+0

は検証のためのオプションWPFを見てください。エスケープキーを押すと、DataGridは自動的に最後の値に戻ります。 http://www.codeproject.com/KB/WPF/wpfvalidation.aspxとhttp://harishasanblog.blogspot.com/2011/01/datagrid-validation-using.htmlをご覧ください –

関連する問題