Вы можете использовать XamForms.Controls.Calendar
.
NuGet: https://www.nuget.org/packages/XamForms.Controls.Calendar/
Пример кода на GitHub: https://github.com/rebeccaXam/XamForms.Controls.Calendar
Xaml:
<StackLayout>
<controls:Calendar
x:Name="calendar"
Padding="10,0,10,0"
DisabledBorderColor="Black"
SelectedBorderWidth="4"
ShowNumberOfWeek="false"
StartDay="Monday"
TitleLabelTextColor="Purple"
TitleLeftArrowTextColor="Blue" />
</StackLayout>
Код:
Используйте SpecialDates
для отображения отдельных дат календаря в различных цветах.
calendar.SpecialDates = new List<XamForms.Controls.SpecialDate>
{
new XamForms.Controls.SpecialDate(new DateTime(2020, 1, 25)){ BackgroundColor = Color.Green, TextColor = Color.Accent, BorderColor = Color.Lime, BorderWidth=8, Selectable = true },
new XamForms.Controls.SpecialDate(new DateTime(2020, 1, 26)){BackgroundColor = Color.Green, TextColor = Color.Accent, BorderColor = Color.Lime, BorderWidth = 8, Selectable = true },
new XamForms.Controls.SpecialDate(new DateTime(2020, 1, 27)){BackgroundColor = Color.Green, TextColor = Color.Accent, BorderColor = Color.Lime, BorderWidth=8, Selectable = true }
};
Я использую три дня для справки.