public override DataTemplate SelectTemplate(object item, DependencyObject container) { DependencyObject depObj = container; while (depObj.GetType() != typeof(SfDataGrid)) { depObj = VisualTreeHelper.GetParent(depObj); if (depObj == null) { return(null); } } if (depObj is FrameworkElement element) { if (item is PublishedReferentialAction refAction) { if (refAction.PublishedReferential.FileHash != null && ExtensionsUtil.IsImageExtension(refAction.PublishedReferential.File.Extension)) { return(element.FindResource("ImageTemplate") as DataTemplate); } if (refAction.PublishedReferential.FileHash != null) { return(element.FindResource("UriTemplate") as DataTemplate); } return(element.FindResource("TextTemplate") as DataTemplate); } } return(null); }
public override DataTemplate SelectTemplate(object item, DependencyObject container) { if (container is FrameworkElement element) { if (item is PublishedReferentialAction refAction) { if (refAction.PublishedReferential.FileHash != null && ExtensionsUtil.IsImageExtension(refAction.PublishedReferential.File.Extension)) { return(element.FindResource("ImageTemplate") as DataTemplate); } if (refAction.PublishedReferential.FileHash != null) { return(element.FindResource("UriTemplate") as DataTemplate); } return(element.FindResource("TextTemplate") as DataTemplate); } else if (item is PublishedResource pResource) { if (pResource.FileHash != null && ExtensionsUtil.IsImageExtension(pResource.File.Extension)) { return(element.FindResource("ResourceImageTemplate") as DataTemplate); } if (pResource.FileHash != null) { return(element.FindResource("ResourceUriTemplate") as DataTemplate); } return(element.FindResource("ResourceTextTemplate") as DataTemplate); } else if (item is PublishedActionCategory pCategory) { if (pCategory.FileHash != null && ExtensionsUtil.IsImageExtension(pCategory.File.Extension)) { return(element.FindResource("CategoryImageTemplate") as DataTemplate); } if (pCategory.FileHash != null) { return(element.FindResource("CategoryUriTemplate") as DataTemplate); } return(element.FindResource("CategoryTextTemplate") as DataTemplate); } else if (item is Skill skill) { if (skill.Hash != null && ExtensionsUtil.IsImageExtension(skill.CloudFile.Extension)) { return(element.FindResource("SkillImageTemplate") as DataTemplate); } if (skill.Hash != null) { return(element.FindResource("SkillUriTemplate") as DataTemplate); } return(element.FindResource("SkillTextTemplate") as DataTemplate); } } return(null); }
public override DataTemplate SelectTemplate(object item, DependencyObject container) { if (item is PublishedAction pAction && pAction.PublishedResource != null) { if (pAction.PublishedResource.FileHash != null && ExtensionsUtil.IsImageExtension(pAction.PublishedResource.File.Extension)) { return(Application.Current.Resources["ResourceImageTemplate"] as DataTemplate); } if (pAction.PublishedResource.FileHash != null) { return(Application.Current.Resources["ResourceUriTemplate"] as DataTemplate); } return(Application.Current.Resources["ResourceTextTemplate"] as DataTemplate); } return(Application.Current.Resources["ResourceNullTemplate"] as DataTemplate); }
public object Convert(object value, Type targetType, object parameter, CultureInfo culture) { try { if (value is ICollection <PublishedReferentialAction> refs) { if (refs.Any() == true && refs.All(_ => _.PublishedReferential.File != null && ExtensionsUtil.IsImageExtension(_.PublishedReferential.File.Extension))) { return(Orientation.Horizontal); } } return(Orientation.Vertical); } catch { return(Orientation.Vertical); } }