public MatchInfoViewModel() { NavigateHomeCommand = new RelayCommand(NavigateHome, () => { return(!_Navigating); }); SubmitCommand = new RelayCommand(Submit, () => { if (_Navigating) { return(false); } if (!SelectedRecorderID.Any()) { return(false); } if (!SelectedAlliance.Any()) { return(false); } if (!SelectedEvent.Any()) { return(false); } if (!MatchNumber.Any()) { return(false); } if (!TeamNumber.Any()) { return(false); } return(true); }); NavigateHomeCommand.RaiseCanExecuteChanged(); SubmitCommand.RaiseCanExecuteChanged(); Messenger.Default.Send(new Message.RetrieveDataMessage <Model.MatchInfoSource>() { SetData = (MatchInfoSource matchInfoSource) => { RecorderIDSource = matchInfoSource.RecorderIDSource; AllianceSource = matchInfoSource.AllianceSource; EventSource = matchInfoSource.EventSource; } }); Messenger.Default.Send(new Message.RetrieveDataMessage <Model.MatchInfo>() { SetData = (MatchInfo matchInfo) => { SelectedRecorderID = matchInfo.RecorderID; SelectedAlliance = matchInfo.Alliance; SelectedEvent = matchInfo.Event; MatchNumber = Convert.ToString(matchInfo.MatchNumber); TeamNumber = Convert.ToString(matchInfo.TeamNumber); } }); }