using XFENewsApplication.Models;
namespace XFENewsApplication.Utilities.Selector;
public partial class ArticleDataTemplateSelector : DataTemplateSelector
{
public DataTemplate? DefaultDataTemplate { get; set; }
public DataTemplate? TextDataTemplate { get; set; }
public DataTemplate? AuthorDataTemplate { get; set; }
public DataTemplate? TitleDataTemplate { get; set; }
public DataTemplate? QuoteDataTemplate { get; set; }
public DataTemplate? CustomTextDataTemplate { get; set; }
public DataTemplate? ImageDataTemplate { get; set; }
public DataTemplate? FlipImageDataTemplate { get; set; }
protected override DataTemplate? SelectTemplateCore(object item)
{
if (item is ArticlePart articlePart)
{
if (articlePart is TextArticlePart)
{
if (articlePart is TitleArticlePart)
return TitleDataTemplate;
if (articlePart is QuoteArticlePart)
return QuoteDataTemplate;
if (articlePart is CustomTextArticlePart)
return CustomTextDataTemplate;
return TextDataTemplate;
}
if (articlePart is ImageArticlePart)
return ImageDataTemplate;
if (articlePart is AuthorArticlePart)
return AuthorDataTemplate;
if (articlePart is FlipImageArticlePart)
return FlipImageDataTemplate;
return TextDataTemplate;
}
return DefaultDataTemplate;
}
}
using XFENewsApplication.Models;
namespace XFENewsApplication.Utilities.Selector;
public partial class ArticleDataTemplateSelector : DataTemplateSelector
{
public DataTemplate? DefaultDataTemplate { get; set; }
public DataTemplate? TextDataTemplate { get; set; }
public DataTemplate? AuthorDataTemplate { get; set; }
public DataTemplate? TitleDataTemplate { get; set; }
public DataTemplate? QuoteDataTemplate { get; set; }
public DataTemplate? CustomTextDataTemplate { get; set; }
public DataTemplate? ImageDataTemplate { get; set; }
public DataTemplate? FlipImageDataTemplate { get; set; }
protected override DataTemplate? SelectTemplateCore(object item)
{
if (item is ArticlePart articlePart)
{
if (articlePart is TextArticlePart)
{
if (articlePart is TitleArticlePart)
return TitleDataTemplate;
if (articlePart is QuoteArticlePart)
return QuoteDataTemplate;
if (articlePart is CustomTextArticlePart)
return CustomTextDataTemplate;
return TextDataTemplate;
}
if (articlePart is ImageArticlePart)
return ImageDataTemplate;
if (articlePart is AuthorArticlePart)
return AuthorDataTemplate;
if (articlePart is FlipImageArticlePart)
return FlipImageDataTemplate;
return TextDataTemplate;
}
return DefaultDataTemplate;
}
}