public CoefficientCreateViewModel(IEnumerable <string> sports, IEnumerable <TournamentBaseModel> tournaments, IEnumerable <EventBaseModel> events) { this.coefficient = new CoefficientCreateModel(); this.CreateCoefficientCommand = new DelegateCommand(() => Create(coefficient), CanCreate); this.Sports = new ObservableCollection <string>(sports); this.Tournaments = new ObservableCollection <TournamentBaseModel>(tournaments); this.Events = new ObservableCollection <EventBaseModel>(events); this.SortedTournaments.Filter = obj => { TournamentBaseModel t = obj as TournamentBaseModel; return (SelectedSport != null && t.SportName == SelectedSport); }; this.SortedEvents.Filter = obj => { EventBaseModel e = obj as EventBaseModel; return (SelectedTournament != null && e.TournamentName == SelectedTournament.Name && e.DateOfTournamentStart == SelectedTournament.DateOfStart); }; }
private UIElement Add(IEnumerable <string> sports, IEnumerable <TournamentBaseModel> tournaments, IEnumerable <EventBaseModel> events) { CoefficientCreateViewModel viewModel = new CoefficientCreateViewModel(sports, tournaments, events); CoefficientCreateControl control = new CoefficientCreateControl(viewModel); viewModel.CoefficientCreated += (s, e) => { CoefficientCreateModel coefficientBaseModel = e.Coefficient; CoefficientCreateDTO coefficientBaseDTO = Mapper.Map <CoefficientCreateModel, CoefficientCreateDTO>(coefficientBaseModel); using (ICoefficientService service = factory.CreateCoefficientService()) { ServiceMessage serviceMessage = service.Create(coefficientBaseDTO); RaiseReceivedMessageEvent(serviceMessage.IsSuccessful, serviceMessage.Message); if (serviceMessage.IsSuccessful) { viewModel.CoefficientValue = 0; viewModel.Description = String.Empty; Notify(); } } }; return(control); }
private void Create(CoefficientCreateModel coefficient) { coefficient.SportName = SelectedSport; coefficient.TournamentName = SelectedTournament.Name; coefficient.DateOfEvent = SelectedEvent.DateOfEvent; coefficient.Participants = SelectedEvent.Participants; RaiseCoefficientCreatedEvent(coefficient); }
private void RaiseCoefficientCreatedEvent(CoefficientCreateModel coefficient) { var handler = CoefficientCreated; if (handler != null) { CoefficientCreateEventArgs e = new CoefficientCreateEventArgs(coefficient); handler(this, e); } }