コード例 #1
0
        /// <summary>
        ///     Creates a PlayerStats instance from the currently displayed information and stats.
        /// </summary>
        /// <returns></returns>
        private PlayerStats createPlayerStatsFromCurrent()
        {
            if (cmbPosition2.SelectedItem == null)
            {
                cmbPosition2.SelectedItem = " ";
            }

            int teamF;
            if (chkIsActive.IsChecked.GetValueOrDefault() == false)
            {
                teamF = -1;
            }
            else
            {
                teamF = GetTeamIDFromDisplayName(cmbTeam.SelectedItem.ToString());
                if (teamF == -1)
                {
                    var atw = new ComboChoiceWindow("Select the team to which to sign the player", _teams,
                                                    ComboChoiceWindow.Mode.OneTeam);
                    if (atw.ShowDialog() == true)
                    {
                        teamF = Misc.GetTeamIDFromDisplayName(MainWindow.TST, ComboChoiceWindow.UserChoice);
                    }
                    else
                    {
                        teamF = -1;
                        chkIsActive.IsChecked = false;
                    }
                }
            }

            var ps = new PlayerStats(_psr.ID, txtLastName.Text, txtFirstName.Text,
                                     (Position) Enum.Parse(typeof (Position), cmbPosition1.SelectedItem.ToString()),
                                     (Position) Enum.Parse(typeof (Position), cmbPosition2.SelectedItem.ToString()),
                                     Convert.ToInt32(txtYearOfBirth.Text), Convert.ToInt32(txtYearsPro.Text), teamF, _psr.TeamS,
                                     chkIsActive.IsChecked.GetValueOrDefault(), false, _psr.Injury,
                                     chkIsAllStar.IsChecked.GetValueOrDefault(), chkIsNBAChampion.IsChecked.GetValueOrDefault(),
                                     _dtOv.Rows[0]) {Height = _psr.Height, Weight = _psr.Weight};
            ps.UpdateCareerHighs(recordsList.Single(r => r.Type == "Career"));
            ps.UpdateContract(dgvContract.ItemsSource.Cast<PlayerStatsRow>().First());
            return ps;
        }