Files
Wino-Mail/Wino.Mail.WinUI/Controls/CalendarTitleBarContent.xaml.cs
2026-03-24 16:57:13 +01:00

56 lines
1.7 KiB
C#

using System;
using System.Windows.Input;
using Microsoft.UI.Xaml;
using Microsoft.UI.Xaml.Controls;
using Wino.Calendar.Controls;
using Wino.Core.Domain.Enums;
namespace Wino.Mail.WinUI.Controls;
public sealed partial class CalendarTitleBarContent : UserControl
{
public event EventHandler? PreviousDateRequested;
public event EventHandler? NextDateRequested;
public CalendarTitleBarContent()
{
InitializeComponent();
}
public string VisibleDateRangeText
{
get => VisibleDateRangeTextBlock.Text;
set => VisibleDateRangeTextBlock.Text = value;
}
public ICommand? TodayClickedCommand
{
get => CalendarTypeSelector.TodayClickedCommand;
set => CalendarTypeSelector.TodayClickedCommand = value;
}
public int DisplayDayCount
{
get => CalendarTypeSelector.DisplayDayCount;
set => CalendarTypeSelector.DisplayDayCount = value;
}
public CalendarDisplayType SelectedType
{
get => CalendarTypeSelector.SelectedType;
set => CalendarTypeSelector.SelectedType = value;
}
public long RegisterSelectedTypeChanged(DependencyPropertyChangedCallback callback)
=> CalendarTypeSelector.RegisterPropertyChangedCallback(WinoCalendarTypeSelectorControl.SelectedTypeProperty, callback);
public void UnregisterSelectedTypeChanged(long token)
=> CalendarTypeSelector.UnregisterPropertyChangedCallback(WinoCalendarTypeSelectorControl.SelectedTypeProperty, token);
private void PreviousDateClicked(object sender, RoutedEventArgs e)
=> PreviousDateRequested?.Invoke(this, EventArgs.Empty);
private void NextDateClicked(object sender, RoutedEventArgs e)
=> NextDateRequested?.Invoke(this, EventArgs.Empty);
}