Files
Shrlalgo.RvKits/WPFDark/Controls/Converters/TreeListViewItemMarginConverter.cs
ShrlAlgo 4d35cadb56 更新
2025-07-11 09:20:23 +08:00

32 lines
919 B
C#

using System;
using System.Globalization;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using WPFDark.Internals;
namespace WPFDark.Controls.Converters
{
public class TreeListViewItemMarginConverter : IValueConverter
{
public double Length { get; set; }
public bool IsFirstColumn { get; set; }
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
if (!(value is TreeViewItem item))
return new Thickness(0);
var right = Length * (item.GetDepth() + 1.0);
var left = IsFirstColumn ? -6.0 : right * -1.0;
return new Thickness(left, 0, right, 0);
}
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
throw new NotImplementedException();
}
}
}