我需要制作一个有两个窗口的应用程序:
窗口1 包含6个倒计时器。
窗口2 这里将设置各个定时器的设置。
这项功能的最佳解决方案是什么?我将使用c#wpf和.Net 4.0
答案 0 :(得分:3)
<强> MVVM 强>
1。 CountDownView
表示单个计时器View,绑定到CurrentValue
属性的简单TextBlock或更好/复杂的东西而不是TextBlock
2。 CountDownViewModel
表示单个计时器本身,在View上显示显示为倒计时编号的属性int CurrentValue
。要实现倒计时,您可以使用Sytem.Timers.Timer并在Elapsed event处理程序中减少CurrentValue属性值
3. TimersView - 第一个带有6个定时器的窗口
ItemsSource - 绑定到Timers
TimersViewModel
属性,基本上TimersViewModel应该设置为TimersView的DataContext,这样你就可以指定以下绑定:(并且每个项目都是绑定到单个计时器)
<ListView ItemsSource="{Binding Timers}" ... />
4. TimersViewModel - 公开IEnumerable<CountDownViewModel> Timers
属性
5. 设置视图 - 设置面板
PS:对于所有暴露给视图的VM属性的INotifyPropertyChanged
为您完成作业: