2025-11-15 14:52:01 +01:00
|
|
|
using System.Linq;
|
2025-10-27 22:52:26 +01:00
|
|
|
using CommunityToolkit.WinUI;
|
2025-10-26 23:35:09 +01:00
|
|
|
using Microsoft.UI.Xaml.Controls;
|
|
|
|
|
using Wino.Controls;
|
|
|
|
|
using Wino.Helpers;
|
|
|
|
|
using Wino.Mail.ViewModels.Data;
|
|
|
|
|
|
|
|
|
|
namespace Wino.Mail.WinUI.Controls.ListView;
|
|
|
|
|
|
|
|
|
|
public partial class WinoThreadMailItemViewModelListViewItem : ListViewItem
|
|
|
|
|
{
|
2025-10-27 22:52:26 +01:00
|
|
|
[GeneratedDependencyProperty]
|
|
|
|
|
public partial bool IsThreadExpanded { get; set; }
|
|
|
|
|
|
|
|
|
|
[GeneratedDependencyProperty]
|
|
|
|
|
public partial ThreadMailItemViewModel? Item { get; set; }
|
|
|
|
|
|
2025-10-26 23:35:09 +01:00
|
|
|
|
|
|
|
|
public WinoThreadMailItemViewModelListViewItem()
|
|
|
|
|
{
|
2025-10-27 01:00:38 +01:00
|
|
|
DefaultStyleKey = typeof(WinoThreadMailItemViewModelListViewItem);
|
|
|
|
|
}
|
|
|
|
|
|
2025-10-26 23:35:09 +01:00
|
|
|
public WinoListView? GetWinoListViewControl()
|
|
|
|
|
{
|
|
|
|
|
var expander = GetExpander();
|
|
|
|
|
|
|
|
|
|
if (expander?.Content is WinoListView control) return control;
|
|
|
|
|
|
|
|
|
|
return null;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public WinoExpander? GetExpander() => WinoVisualTreeHelper.FindDescendants<WinoExpander>(this).FirstOrDefault();
|
|
|
|
|
}
|