AppDimens.Net.Maui 3.6.0

dotnet add package AppDimens.Net.Maui --version 3.6.0
                    
NuGet\Install-Package AppDimens.Net.Maui -Version 3.6.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="AppDimens.Net.Maui" Version="3.6.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="AppDimens.Net.Maui" Version="3.6.0" />
                    
Directory.Packages.props
<PackageReference Include="AppDimens.Net.Maui" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add AppDimens.Net.Maui --version 3.6.0
                    
#r "nuget: AppDimens.Net.Maui, 3.6.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package AppDimens.Net.Maui@3.6.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=AppDimens.Net.Maui&version=3.6.0
                    
Install as a Cake Addin
#tool nuget:?package=AppDimens.Net.Maui&version=3.6.0
                    
Install as a Cake Tool

<div align="center">

🪟 AppDimens.Net.Maui

MAUI bootstrap — window attach, event-driven resize watcher, XAML markup extensions and converters.

Part of the AppDimens for .NET family · requires AppDimens.Net (core).

NuGet License .NET

</div>


🎯 What is it?

The glue between the AppDimens engine and .NET MAUI: one call attaches your Window and installs an ambient context with a snapshot-partitioned cache and an event-driven resize watcher (listeners fire only on real configuration deltas). Also includes XAML markup extensions and value converters so layouts can scale without code-behind.

📦 Installation

dotnet add package AppDimens.Net.Maui

Depends on AppDimens.Net (pulled automatically).

🚀 Getting started

using AppDimens.Net.Maui.Platform;

protected override Window CreateWindow(IActivationState? state)
{
    var window = new Window();
    AppDimensMaui.AttachWindow(window);      // BEFORE creating any page!
    window.Page = new NavigationPage(new MainPage());
    return window;
}

⚠️ Parameterless scaling extensions (16.Sdp()) resolve through the ambient scope — attach the window before constructing pages that use them.

🧭 API

Bootstrap — AppDimensMaui

Member Purpose
AttachWindow(window, multiWindowProbe?) installs ambient context + watcher; returns the scope
Detach() removes the primary scope
Init(application) app-level convenience init
Primary current primary WindowDimensScope

Context — WindowDimensScope

Member Purpose
implements IAppDimensContext density, screen dp, orientation, fontScale
RegisterConfigurationListener(Action) resize/config-change subscription
Update() manual refresh
FontScaleOverride force a font-scale for previews/tests

XAML markup extensions (AppDimens.Net.Maui.Xaml)

xmlns:d="clr-namespace:AppDimens.Net.Maui.Xaml;assembly=AppDimens.Net.Maui"

<Label Text="Hello"
       FontSize="{d:Ssp 16}"
       Padding="{d:Sdp 16}" />

Available: SdpExtension, SdpaExtension, HdpExtension, WdpExtension, SspExtension, FsdpExtension, PsdpxExtension and friends.

Converters

SdpConverter · SspConverter — bind raw numbers to scaled values in MVVM layouts.

💡 When to use

Scenario Recommendation
Any MAUI app using AppDimens ✅ this package
Console/tests/headless engines core only, explicit contexts
Everything-in-one reference Sdk meta-package

📚 Full package family

AppDimens.Net · Percent · Power · Auto · Logarithmic · Fluid · Interpolated · Diagonal · Perimeter · Fill · Fit · Density · Resize · Units · Sdk meta-package


Apache-2.0 — © Jean Bodenberg · Repository · Formulas are bit-a-bit ports of appdimens-kmp

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 is compatible.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
3.6.0 84 8/23/2026