我有一个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
“我知道那种感觉,兄弟”;) –