master
1using System.Collections.Generic;
2using System.Linq;
3using MVPtoMVVM.mvp.presenters;
4using MVPtoMVVM.mvp.views;
5using StructureMap;
6
7namespace MVPtoMVVM.mvp
8{
9 public partial class MvpWindow : IMvpView
10 {
11 private IMvpPresenter presenter;
12
13 public MvpWindow()
14 {
15 InitializeComponent();
16 presenter = ObjectFactory.GetInstance<IMvpPresenter>();
17 presenter.SetView(this);
18 newItemButton.Click += (o, e) => presenter.AddNewItem();
19 cancelButton.Click += (o, e) => presenter.CancelAllChanges();
20 }
21
22 public void ShowTodoItems(IEnumerable<ITodoItemPresenter> presenters)
23 {
24 todoItemsList.ItemsSource = presenters.Select(x => new TodoItemView(x, presenter));
25 }
26
27 public IEnumerable<ITodoItemPresenter> GetTodoItems()
28 {
29 return todoItemsList.ItemsSource.Cast<ITodoItemView>().Select(x => x.Presenter);
30 }
31
32 }
33}