feat: add demo page, prepare collection changed behavior.

This commit is contained in:
rabbitism
2023-03-23 12:52:02 +08:00
parent 615ba9ce0a
commit 0f139264cc
11 changed files with 253 additions and 40 deletions

View File

@@ -1,3 +1,4 @@
using System.Globalization;
using Avalonia;
using Avalonia.Controls;
using Avalonia.Controls.Metadata;
@@ -12,7 +13,7 @@ public class TimelineItem: ContentControl
{
public const string PC_First = ":first";
public const string PC_Last = ":last";
public static readonly StyledProperty<IBrush> IconForegroundProperty =
AvaloniaProperty.Register<TimelineItem, IBrush>(nameof(IconForeground));
@@ -40,7 +41,7 @@ public class TimelineItem: ContentControl
}
public static readonly StyledProperty<string?> TimeFormatProperty = AvaloniaProperty.Register<TimelineItem, string?>(
nameof(TimeFormat));
nameof(TimeFormat), defaultValue:CultureInfo.CurrentUICulture.DateTimeFormat.SortableDateTimePattern);
public string? TimeFormat
{
@@ -56,4 +57,10 @@ public class TimelineItem: ContentControl
get => GetValue(DescriptionTemplateProperty);
set => SetValue(DescriptionTemplateProperty, value);
}
internal void SetPosition(bool isFirst, bool isLast)
{
PseudoClasses.Set(PC_First, isFirst);
PseudoClasses.Set(PC_Last, isLast);
}
}