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);
                }
            });
        }