おはよう、c#wpf - 編集ウィンドウから戻るときにグリッドを更新
編集ウィンドウの要素の1つを変更した後にグリッドをリフレッシュする最善の方法を知りたかったのです。
私は従業員が言うことができるグリッドを持っています。私はこの従業員を削除し、メイングリッドに戻ってきた場合は、その従業員がまだある
EmployeeEdit wEdit = new EmployeeEdit(ref selectedEmployee);
wEdit.Show();
私は、グリッドがリフレッシュされていないので(私はやっていけない...編集ウィンドウへの参照として従業員を渡しますショーダイアログ)。
私は変数を参照として渡し、その変数を従業員の削除時に変更することを考えていました。次に、元のグリッドにフォーカスがあるときは、変数をチェックし、グリッドをリフレッシュする必要がある場合はリフレッシュします。
これはリグで修正されたようだが、これを行う最も効率的な方法を知りたかった。
あなたは
従業員を最初にグリッドに追加する部分を表示します。実際には、それはあなたがそれをリフレッシュする方法を知っているように思われるので、無関係なようです。編集ウィンドウが閉じられたときを知る方法が問題です。そのウィンドウ内にイベントを提供し、変更が発生したときにそのイベントを発生させ、ハンドラー内のグリッドを表示して更新する前に呼び出し元ウィンドウでイベントをサブスクライブします。 – Sinatr
グリッドのデータソースとしてObservableCollectionを使用し、削除するときにこのリストから雇用者を削除すると、すぐに利用できます – unkreativ
'CollectionViewSource'を' IEnumerable 'コレクションとともに使用することもできます。これは、コレクションの型を変更する必要なく、ObservalbleCollectionとして機能します。 –
XAMlMAX