2

私は基本的に次のようなものを作りたいです:

したがって、ユーザーはリストからアイテムを追加/削除し、リストの下の赤いパネルで編集できます。アイテムを選択すると、パネルで変更を行うことができます。

次に、下のボタンのいずれかを使用して、変更を保存またはキャンセルできます。ユーザーは、変更を明示的にキャンセルしない限り、リスト内の別の項目を選択できません。

これを行う方法?赤いパネルを別のコントロールにして、変更時にDataContext手動でListView.SelectedItem変更するオプションしか表示されません。赤いパネルは、 「保存」オプションと「キャンセル」オプションを持つアイテムのDataContext特別なラッパーです。編集中は変化しないように設定されています。ListViewListViewIsEnabled = FalseSelectedItem

これをどのように行いますか?

4

3 に答える 3

2

質問は、たとえば、これから非常に近いです: バインディングプロパティの更新を停止するにはどうすればよいですか?

とにかく、これを処理するWPFオブジェクトはBindingGroupです:http:
//msdn.microsoft.com/en-us/library/system.windows.data.bindinggroup.aspx

于 2012-07-18T08:47:19.747 に答える
2

最も簡単なアプローチは、選択した項目を編集するためのダイアログを使用することです。それが私のプロジェクトで私がしていることです。私はこのダイアログサービスを使用して結果を処理します。

1 つのビューですべてを処理する場合は、SelecteItem が設定されているときにプロパティ SelectionEnabled=false を設定できます。そして、保存またはキャンセル コマンドが呼び出されると、SelectionEnabled=true になります。

編集パネルのデータ コンテキストは単に SelectedItem です。

于 2012-07-18T07:42:44.053 に答える