Esempio n. 1
0
        private void searchButton_Click(object sender, EventArgs e)
        {
            ClearPriorResults();

            var checkedGenderButtonName = GenderPanel.Controls.OfType <RadioButton>()
                                          .First(radio => radio.Checked).Name;

            var checkedRankButtonName = RankPanel.Controls.OfType <RadioButton>()
                                        .First(radio => radio.Checked).Name;

            var selectedCategoryValue = CategoryPanel.Controls.OfType <ComboBox>()
                                        .Single().SelectedValue as int?;

            var ageCategoryButtonText = AgePanel.Controls.OfType <RadioButton>()
                                        .First(radio => radio.Checked).Text;

            var clubMembershipButtonText = MembershipPanel.Controls.OfType <RadioButton>()
                                           .First(radio => radio.Checked).Text;

            int?ageMax;
            var ageMin = GetAgeMinAndMax(ageCategoryButtonText, out ageMax);

            int?rankMax;
            var rankMin = GetRankMinAndMax(checkedRankButtonName, out rankMax);

            var sql = m_searchService.BuildSql(checkedRankButtonName,
                                               rankMin,
                                               rankMax,
                                               checkedGenderButtonName,
                                               selectedCategoryValue,
                                               ageCategoryButtonText,
                                               ageMin,
                                               ageMax,
                                               clubMembershipButtonText);
            var grid = m_searchService.Search(sql);

            AddSendEmailButton();
            StyleResultsGrid(grid);
            resultsPanel.Controls.Add(grid);
        }