コマンドデザインパターンを使用して、DataGridViewの元に戻す機能を追加しています。元に戻す目的で、エディションの前にDataGridViewのセルの値を保存する方法はありますか?
EditCommandを作成するには、セルの以前の値がわかっている必要があります。そのため、ユーザーが元に戻す場合に再入力できます。
私はCellBeginEditイベントとCellEndEditイベントを使用しています。
CellBeginEditでは、セルの値をプライベート変数に保存し、CellEndEdit関数では、保存された値を使用してEditCommandを作成します。
それはうまくいきますが、それを行うためのより健康的な方法があるのだろうかと思います。多分以前のセル値と新しいセル値を保持するイベント。
実際にDataGridViewが自動的に更新されず、EditCommandがそれを行うことができない場合、ボーナスポイントが表示されます。
でのドキュメントとダウンロードを見つけることができますが、私は、コマンドのデザインを使用し続けたいと思います。また、私はすでに元に戻す/やり直しのためのスタックを持っています。問題は、使用するイベントです。 – mee
あなたはBindingGroupを調べましたか?これは、DataGridが値の管理と適用に使用するものです。行レベル(セルレベルではなく)で物事を管理したい場合や、バインディングのコミットに関連する動作を変更したい場合は、BindingGroupを使用するとよいでしょう。 – NathanAW