public static BitmapImage LoadLogo(LogoUrls logo) { string LogoPath; try { if (!string.IsNullOrEmpty(logo.The90)) { LogoPath = logo.The90; } else if (!string.IsNullOrEmpty(logo.The240)) { LogoPath = logo.The240; } else if (!string.IsNullOrEmpty(logo.Original)) { LogoPath = logo.Original; } else { LogoPath = @"https://pp.userapi.com/c840720/v840720243/855bb/HBaxCm4hv3s.jpg"; } } catch (Exception e) { Logging.WriteLog(e.Message + "\n" + e.StackTrace + "\n"); LogoPath = @"https://pp.userapi.com/c840720/v840720243/855bb/HBaxCm4hv3s.jpg"; } BitmapImage bitmap = new BitmapImage(); bitmap.BeginInit(); bitmap.UriSource = new Uri(LogoPath, UriKind.Absolute); bitmap.EndInit(); return(bitmap); }
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; // Получение ссылки на сайт работадателя. EmplUrl = Actions.GetEmplUrl(VacId.Employer.Id); // Вывод в текстовй блок информации TbDescryption.Text = "Краткое описание: \n"; // Если требования в вакансии не пусто, то выводить их. // Если пусто, то сообщать об этом. if (VacId.Snippet != null) { TbDescryption.Text += Actions.NotNull(VacId.Snippet.Requirement) + "\n \n"; TbDescryption.Text += Actions.NotNull(VacId.Snippet.Responsibility) + "\n \n"; } else { TbDescryption.Text += "Описания нет" + "\n \n"; } // Если информаци об адресе не пусто, то выводить город и метро. if (VacId.Address != null) { TbDescryption.Text += "Город: " + Actions.NotNull(VacId.Address.City) + "\n" + "Улица: " + Actions.NotNull(VacId.Address.Street) + " " + "Дом: " + Actions.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 = "Метро: Информации нет"; } // Загрузка логотипа компании. EmplLogo.Source = LogoUrls.LoadLogo(VacId.Employer.LogoUrls); // Формирование гиперссылки на выбранную вакансию. 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); }