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
<PackageReference Include="AppDimens.Net.Maui" Version="3.6.0" />
<PackageVersion Include="AppDimens.Net.Maui" Version="3.6.0" />
<PackageReference Include="AppDimens.Net.Maui" />
paket add AppDimens.Net.Maui --version 3.6.0
#r "nuget: AppDimens.Net.Maui, 3.6.0"
#:package AppDimens.Net.Maui@3.6.0
#addin nuget:?package=AppDimens.Net.Maui&version=3.6.0
#tool nuget:?package=AppDimens.Net.Maui&version=3.6.0
<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).
</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 | Versions 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. |
-
net10.0
- AppDimens.Net (>= 3.6.0)
- AppDimens.Net.Fluid (>= 3.6.0)
- AppDimens.Net.Percent (>= 3.6.0)
- Microsoft.Maui.Controls (>= 8.0.100)
-
net8.0
- AppDimens.Net (>= 3.6.0)
- AppDimens.Net.Fluid (>= 3.6.0)
- AppDimens.Net.Percent (>= 3.6.0)
- Microsoft.Maui.Controls (>= 8.0.100)
-
net9.0
- AppDimens.Net (>= 3.6.0)
- AppDimens.Net.Fluid (>= 3.6.0)
- AppDimens.Net.Percent (>= 3.6.0)
- Microsoft.Maui.Controls (>= 8.0.100)
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 |