Skip to content

CalendarControl is a calendar control (week view) for Avalonia. See and run the sample app to get to know it.

License

Notifications You must be signed in to change notification settings

satial-interfaces/CalendarControl

Repository files navigation

CalendarControl for Avalonia

This is a calendar control (week view) for Avalonia. See and run the sample app to get to know it.

CalendarControl screenshot

How to use

First add the package to your project. Use NuGet to get it: https://www.nuget.org/packages/CalendarControl.Avalonia/

Or use this command in the Package Manager console to install the package manually

Install-Package CalendarControl.Avalonia

Second add a style to your App.axaml (from the sample app)

<Application
    xmlns="https://github.com/avaloniaui"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
    <Application.Styles>
        <!-- Overall style goes here: <FluentTheme Mode="Light"/> -->
        <StyleInclude Source="avares://SampleApp/Themes/FluentCalendarControl.axaml" />
    </Application.Styles>
</Application>

Or use the default one

<Application
    xmlns="https://github.com/avaloniaui"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
    <Application.Styles>
        <!-- Overall style goes here: <FluentTheme Mode="Light"/> -->
        <StyleInclude Source="avares://CalendarControl/Themes/Default.axaml" />
    </Application.Styles>
</Application>

Then add the control to your Window.axaml (minimum)

<Window xmlns="https://github.com/avaloniaui"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:si="clr-namespace:SatialInterfaces.Controls.Calendar;assembly=CalendarControl">
    <Grid>
        <si:CalendarControl />
    </Grid>
</Window>

It's even better to specify the item template with binding to your view model

<Window xmlns="https://github.com/avaloniaui"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:si="clr-namespace:SatialInterfaces.Controls.Calendar;assembly=CalendarControl">
    <Grid>
        <si:CalendarControl>
            <si:CalendarControl.ItemTemplate>
                <DataTemplate>
                    <si:AppointmentControl Begin="{Binding Begin}" End="{Binding End}" Text="{Binding Text}" />
                </DataTemplate>
            </si:CalendarControl.ItemTemplate>
        </si:CalendarControl>
    </Grid>
</Window>

About

CalendarControl is a calendar control (week view) for Avalonia. See and run the sample app to get to know it.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages