我有一個MVVM應用程序,我想將3個集合綁定在一起。在視圖中我有ItemsControl與TimeBoxes(只有文本框與依賴項屬性時間)。WPF綁定3集合在一起
<Window x:Class="Scoreboard.View.MainWindow"
...
<ItemsControl ItemsSource="{Binding TimeBoxes}"/>
...
</Window>
隨着後面的代碼
public class Mainwindow
{
//...
var Timeboxes = new ObservableCollection<TimeBox>();
}
在模式,我想有一個時間集合。
public class GameModel
{
var Times = new ObservableCollection<Time>();
// Don't know if this is how it should be
}
然後我有輸出中的另一個窗口,類同瀏覽主窗口,但ItemsControl的持有國界的,而不是時間盒。
<Window x:Class="Scoreboard.Display.DisplayWindow"
...
<ItemsControl ItemsSource="{Binding Borders}"/>
...
</Window>
它應該做的是:一旦點擊查看中的一個按鈕(MainWindow
)一TimeBox
在TimeBoxes
集合創建。 Time
的那個TimeBox
綁定到Time
的Times
的GameModel
。並且Time
也被綁定到輸出(顯示)Window
的Borders
中新的Border
(我有TimeToStringConverter
)的內容(標籤)。當Time
在GameModel
達到零時,其實例將從所有集合中刪除。我的問題是我不知道如何將集合中的項目綁定到另一個集合的項目。爲簡單起見,省略ViewModel。
總結我想動態綁定TimeBox
到Time
和Time
到Border
的在1內容:1:1的比例。
謝謝你,這是一個甜蜜的解決方案。我非常專注於約束力,忘記了通知:D – Korhak
「我知道那種感覺,兄弟」;) –