DragAndDrop core

This commit is contained in:
FrigaT
2026-01-18 16:33:35 +03:00
parent 9ea82af329
commit 79bdd8bc62
229 changed files with 21214 additions and 2494 deletions

View File

@@ -0,0 +1,27 @@
using Lattice.Core.Docking.Models;
using Microsoft.UI.Xaml;
using Microsoft.UI.Xaml.Controls;
namespace Lattice.UI.Docking.WinUI.Converters;
/// <summary>
/// Выбирает визуальный шаблон для узла дерева макета.
/// </summary>
public class DockTemplateSelector : DataTemplateSelector
{
/// <summary> Шаблон для узлов-разделителей (DockGroup). </summary>
public DataTemplate? GroupTemplate { get; set; }
/// <summary> Шаблон для контейнеров вкладок (DockLeaf). </summary>
public DataTemplate? LeafTemplate { get; set; }
protected override DataTemplate? SelectTemplateCore(object item, DependencyObject container)
{
return item switch
{
DockGroup => GroupTemplate,
DockLeaf => LeafTemplate,
_ => base.SelectTemplateCore(item, container)
};
}
}