私はWindowsフォームを使用して簡単なテキストエディタをコーディングしています。多くのエディタと同様に、テキストが変更されると、タイトルバーの横にアスタリスクが表示され、未保存の作業があることが示されます。ユーザーが保存すると、これは消えます。C#のテキストフィールドの以前の状態を検出する方法は?
ただし、問題があります。これは、メインテキストボックスの変更イベントで処理されます。しかし、ファイルを開いたり、ユーザーが "New file"を選択すると、エディタを開いてファイルを開くと、保存されていない変更があることが示されます。可能な解決策は何ですか?
アスタリスクをトリガすべきではない方法でテキストが変更されたかどうかを示すグローバル変数があると考えましたが、より良い方法が必要です。
これは本当に正確ではありません。静的クラスを作成し、静的変数をそのクラスに追加することができます。ブーム、グローバル変数。 – jasonh
スタティック変数はグローバルではありません。彼らは静かです。私はこれが幾分賢明であることを知っていますが、私は用語を正確にすることが最良であると感じます。 –
申し訳ありませんが、私はフォームのインスタンス変数を意味しました。しかし、私はまだこの解決策が嫌いです。 – Javier