ここでは MVVM が良いパターンです。コントロール間でデータを渡すのに問題がある場合は、統一されたデータ レイヤーの上にそれらを導入してみませんか? このことを考慮:
メニューの 3 つのラジオ ボタンで、それぞれのプロパティがそれぞれの のIsChecked
プロパティにバインドされてVisibility
いますUserControl
。
StackPanel
3つすべてを保持UserControls
ListView
ViewModel にバインドList<Item>
それぞれが にUserControls
バインドされていますListView.SelectedItem
。そのうちの 1 つはTextBlock
読み取り専用に使用され、もう 1 つTextBox
は編集に使用されます。3 つ目は、新しいアイテムを に作成しますList<Item>
。for eachを作成ItemTemplate
するか、UserControl
(非常によく似ているため) 作成して を使用する必要がありますDataTemplateSelector
。
MVVM に慣れていない場合は、ここから始めることをお勧めします。MVVM Lightなどの既存のフレームワークの 1 つを使用することもできます。