Lungo

Lungo is a theme management library for Xaml platforms. Made in πŸ‡ΊπŸ‡¦.


Keywords
wpf, uno, themes, wpf-controls, attached-properties, dark-light-mode, management, csharp, dotnet, generic, nuget, uno-platform, uwp, wpf-application, xaml
License
MIT
Install
Install-Package Lungo -Version 0.0.7

Documentation

Nugets

package version downloads graphics engine
Lungo NuGet Status NuGet Status Native
Lungo.Wpf NuGet Status NuGet Status SkiaSharp
Lungo.Uwp NuGet Status NuGet Status SkiaSharp
Lungo.Uno NuGet Status NuGet Status SkiaSharp
Lungo.WinUI NuGet Status NuGet Status SkiaSharp
Lungo.Uno.WinUI NuGet Status NuGet Status SkiaSharp

Preview

0.0.6.Preview.mp4

Example

<Window.Resources>
    <lungo:ThemeColorsDictionary x:Key="RectangleThemeColor">
        <Color x:Key="Dark">#1e1e1e</Color>
        <Color x:Key="Light">#ffffff</Color>
    </lungo:ThemeColorsDictionary>
</Window.Resources>
<Rectangle Fill="{lungo:ThemeColorResource RectangleThemeColor}" Width="100" Height="200"
           HorizontalAlignment="Left" VerticalAlignment="Top"/>

<ToggleButton x:Name="themeChanger" Height="20" Width="40" Margin="0,8,20,0"
              HorizontalAlignment="Right" VerticalAlignment="Top" 
              Checked="OnLightChecked" Unchecked="OnDarkChecked"/>
private void OnDarkChecked(object sender, RoutedEventArgs e)
    => SolarEclipseService.ChangeTheme(themeChanger, "Dark", 5_000);

private void OnLightChecked(object sender, RoutedEventArgs e)
    => SolarEclipseService.ChangeTheme(themeChanger, "Light", 5_000);