feat: implement single date selector.

This commit is contained in:
rabbitism
2024-06-20 16:21:36 +08:00
parent ddb6900943
commit e6b23312ba
8 changed files with 422 additions and 31 deletions

View File

@@ -24,8 +24,7 @@ public class CalendarDayButton : ContentControl
private static HashSet<string> _pseudoClasses =
[
PseudoClassName.PC_Selected, PC_EndDate, PC_PreviewStartDate,
PC_PreviewEndDate, PseudoClassName.PC_Selected, PC_InRange
PseudoClassName.PC_Selected, PC_StartDate, PC_EndDate, PC_PreviewStartDate, PC_PreviewEndDate, PC_InRange
];
public static readonly RoutedEvent<CalendarDayButtonEventArgs> DateSelectedEvent =
@@ -127,7 +126,7 @@ public class CalendarDayButton : ContentControl
set
{
_isSelected = value;
PseudoClasses.Set(PseudoClassName.PC_Selected, value);
SetPseudoClass(PseudoClassName.PC_Selected);
}
}
@@ -170,20 +169,6 @@ public class CalendarDayButton : ContentControl
remove => RemoveHandler(DateSelectedEvent, value);
}
protected override void OnApplyTemplate(TemplateAppliedEventArgs e)
{
base.OnApplyTemplate(e);
/*
PseudoClasses.Set(PC_Today, IsToday);
PseudoClasses.Set(PC_StartDate, IsStartDate);
PseudoClasses.Set(PC_EndDate, IsEndDate);
PseudoClasses.Set(PC_PreviewStartDate, IsPreviewStartDate);
PseudoClasses.Set(PC_PreviewEndDate, IsPreviewEndDate);
PseudoClasses.Set(PC_InRange, IsInRange);
PseudoClasses.Set(PseudoClassName.PC_Selected, IsSelected);
*/
}
protected override void OnPointerPressed(PointerPressedEventArgs e)
{
base.OnPointerPressed(e);