34 lines
1.0 KiB
C#
34 lines
1.0 KiB
C#
using Windows.UI.Xaml;
|
|
using Windows.UI.Xaml.Controls;
|
|
using Wino.Core.Domain.Enums;
|
|
|
|
namespace Wino.Selectors;
|
|
|
|
/// <summary>
|
|
/// Template selector for previewing mail item display modes in Settings->Personalization page.
|
|
/// </summary>
|
|
public partial class MailItemDisplayModePreviewTemplateSelector : DataTemplateSelector
|
|
{
|
|
public DataTemplate CompactTemplate { get; set; }
|
|
public DataTemplate MediumTemplate { get; set; }
|
|
public DataTemplate SpaciousTemplate { get; set; }
|
|
|
|
protected override DataTemplate SelectTemplateCore(object item, DependencyObject container)
|
|
{
|
|
if (item is MailListDisplayMode mode)
|
|
{
|
|
switch (mode)
|
|
{
|
|
case MailListDisplayMode.Spacious:
|
|
return SpaciousTemplate;
|
|
case MailListDisplayMode.Medium:
|
|
return MediumTemplate;
|
|
case MailListDisplayMode.Compact:
|
|
return CompactTemplate;
|
|
}
|
|
}
|
|
|
|
return base.SelectTemplateCore(item, container);
|
|
}
|
|
}
|