예제 #1
0
파일: Metro.cs 프로젝트: TimurTimmmy/HH
        public static Brush GetColor(Metro metro)
        {
            switch (metro.LineId)
            {
            case "1":
                return(Brushes.Red);

            case "2":
                return(Brushes.Green);

            case "3":
                return(Brushes.Blue);

            case "4":
                return(Brushes.LightBlue);

            case "5":
                return(Brushes.Brown);

            case "6":
                return(Brushes.Orange);

            case "7":
                return(Brushes.Purple);

            case "8":
                return(Brushes.DarkGoldenrod);

            case "9":
                return(Brushes.DarkGray);

            case "10":
                return(Brushes.LightGreen);

            case "11":
                return(Brushes.LightCyan);

            case "12":
                return(Brushes.DeepSkyBlue);

            case "14":
                return(Brushes.IndianRed);

            default:
                return(Brushes.Black);
            }
        }
        private void ResultGrid_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            // Очистка форм
            UrlLabel.Text      = null;
            TbDescryption.Text = null;
            MetroLabel.Content = null;

            //Заполнение списка из выбранного поля в таблице.
            DataGrid vac   = (DataGrid)sender;
            Item     VacId = (Item)vac.SelectedValue;

            //////////var EmplUrl =  Employer.GetUrl(VacId.Employer.Id);

            // Вывод в текстовй блок информации
            TbDescryption.Text = "Краткое описание: \n";

            // Если требования в вакансии не пусто, то выводить их.
            // Если пусто, то сообщать об этом.
            if (VacId.Snippet != null)
            {
                TbDescryption.Text += NotNull(VacId.Snippet.Requirement) + "\n \n";
                TbDescryption.Text += NotNull(VacId.Snippet.Responsibility) + "\n \n";
            }
            else
            {
                TbDescryption.Text += "Описания нет" + "\n \n";
            }

            // Если информаци об адресе не пусто, то выводить город и метро.
            if (VacId.Address != null)
            {
                TbDescryption.Text += "Город: " + NotNull(VacId.Address.City) + "\n"
                                      + "Улица: " + NotNull(VacId.Address.Street) + " " + "Дом: " + NotNull(VacId.Address.Building);

                {
                    // Если информация о метро не пусто, то выводить название станции.
                    // Иначе выводить "Не задано".
                    if (VacId.Address.Metro != null)
                    {
                        MetroLabel.Content    = "Метро: " + VacId.Address.Metro.StationName;
                        MetroLabel.Foreground = Metro.GetColor(VacId.Address.Metro);
                    }
                    else
                    {
                        MetroLabel.Content    = "Не задано";
                        MetroLabel.Foreground = Brushes.Black;
                    }
                }
            }
            else
            {
                TbDescryption.Text += "Информации нет" + "\n"; MetroLabel.Foreground = Brushes.Black; MetroLabel.Content = "Метро: Информации нет";
            }

            // Формирование гиперссылки на выбранную вакансию.
            Hyperlink hyperLink = new Hyperlink()
            {
                NavigateUri = new System.Uri(VacId.AlternateUrl.ToString())
            };

            hyperLink.Inlines.Add(VacId.AlternateUrl.ToString());
            hyperLink.RequestNavigate += Hyperlink_RequestNavigate;
            UrlLabel.Inlines.Add(hyperLink);
        }