Ansight.Tools.Maui
1.0.1
See the version list below for details.
dotnet add package Ansight.Tools.Maui --version 1.0.1
NuGet\Install-Package Ansight.Tools.Maui -Version 1.0.1
<PackageReference Include="Ansight.Tools.Maui" Version="1.0.1" />
<PackageVersion Include="Ansight.Tools.Maui" Version="1.0.1" />
<PackageReference Include="Ansight.Tools.Maui" />
paket add Ansight.Tools.Maui --version 1.0.1
#r "nuget: Ansight.Tools.Maui, 1.0.1"
#:package Ansight.Tools.Maui@1.0.1
#addin nuget:?package=Ansight.Tools.Maui&version=1.0.1
#tool nuget:?package=Ansight.Tools.Maui&version=1.0.1
Ansight.Tools.Maui
Grouped .NET MAUI inspection and mutation tools for the Ansight .NET SDK.
License
The Ansight SDK is source-available software under the Ansight SDK Source-Available License. It is not open-source software. Production use is licensed only for use with Ansight Services.
Registered tools:
maui.get_current_pagemaui.get_visual_treemaui.find_elementsmaui.get_elementmaui.get_bindable_propertymaui.set_bindable_propertymaui.clear_bindable_propertymaui.inflate_xamlmaui.add_elementmaui.remove_elementmaui.set_app_thememaui.get_binding_contextmaui.get_bindingsmaui.get_resource_statemaui.get_navigation_statemaui.invoke_element_actionmaui.wait_for_uimaui.get_layout_diagnosticsmaui.get_handler_diagnosticsmaui.invoke_binding_context_commandmaui.set_binding_context_property
Usage
using Ansight;
using Ansight.Tools.Maui;
var options = Options.CreateBuilder()
.WithMauiTools()
.WithReadWriteToolAccess()
.Build();
The visual tree and search tools return MAUI element ids that can be passed to the element, bindable-property, binding, layout, handler, action, wait, XAML experiment, theme, and binding-context tools. Write-scoped tools require WithReadWriteToolAccess() or a custom ToolGuard.
Custom controls that render their own child model, such as Mapbox, Skia, or native-hosted controls, can register visual-tree extensions. A child walker exposes additional real MAUI Element children to search and node resolution. A child builder exposes synthetic visual-tree nodes for drawn/native items that are not MAUI elements:
using System.Text.Json.Nodes;
using Ansight.Tools.Maui;
using Microsoft.Maui.Graphics;
var registration = MauiVisualTreeRegistry.RegisterChildBuilder<MyMapView>((mapView, context) =>
mapView.VisibleMarkers.Select(marker => new MauiVisualTreeNode(
context.CreateChildId(marker.Id),
"MyApp.MapMarker",
"mapMarker")
{
Label = marker.Title,
Bounds = new Rect(marker.X, marker.Y, marker.Width, marker.Height),
Properties = new JsonObject
{
["layer"] = marker.LayerName,
["selected"] = marker.IsSelected
}
}));
Keep the returned IDisposable for the lifetime of the registration and dispose it to unregister.
Synthetic nodes appear in maui.get_visual_tree; only real Element children returned by a child walker can be resolved later by element mutation or property tools.
maui.inflate_xaml creates and retains a detached MAUI element from an arbitrary XAML string using LoadFromXaml. The returned node id can be passed to maui.add_element to attach it under a live layout or content control, and maui.remove_element can detach it again without restarting the app.
maui.set_app_theme changes Application.Current.UserAppTheme to light, dark, or system at runtime.
These tools are intended for local debugging only. Broad visual-tree labels are PII-safe by default: typed Entry, Editor, and SearchBar text, picker selections, dates, times, toggle states, slider values, and sensitive-looking text are omitted or redacted. Resource values and binding-context property snapshots are opt-in; by default resource inspection returns keys/types and binding-context inspection returns metadata only. Explicit value-reading tools can still reveal app data, binding expressions, binding-context object state, handler metadata, and mutate live UI, app theme, or view-model state.
Build-time remote tool policy
Projects that reference this package are covered by AnsightRemoteToolsPolicy. The default AllowedWithWarnings policy logs detected tool type and assembly details and emits a build warning when remote tools are included. Because this package contains remote tools, Disallowed only succeeds when the package is omitted from that build, for example with Debug-only package references. Use Allowed to bypass remote tool scanning and warnings. Set AnsightLogRemoteTools=false to suppress the detected-tool list.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net9.0 is compatible. net9.0-android was computed. net9.0-android35.0 is compatible. net9.0-browser was computed. net9.0-ios was computed. net9.0-ios18.0 is compatible. net9.0-maccatalyst was computed. net9.0-maccatalyst18.0 is compatible. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. 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. |
-
net9.0
- Ansight.Core (>= 1.0.1)
-
net9.0-android35.0
- Ansight.Core (>= 1.0.1)
- Microsoft.Maui.Controls (>= 9.0.120)
-
net9.0-ios18.0
- Ansight.Core (>= 1.0.1)
- Microsoft.Maui.Controls (>= 9.0.120)
-
net9.0-maccatalyst18.0
- Ansight.Core (>= 1.0.1)
- Microsoft.Maui.Controls (>= 9.0.120)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on Ansight.Tools.Maui:
| Package | Downloads |
|---|---|
|
Ansight.Maui
All-in-one Ansight SDK package for .NET MAUI apps, including core runtime, pairing, remote tools, automatic lifecycle and page-view telemetry, and MAUI inspection tools. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.4.0-preview.3 | 36 | 8/25/2026 |
| 1.4.0-preview.1 | 61 | 8/24/2026 |
| 1.3.0-preview.12 | 46 | 8/24/2026 |
| 1.3.0-preview.11 | 52 | 8/23/2026 |
| 1.3.0-preview.10 | 55 | 8/21/2026 |
| 1.3.0-preview.9 | 66 | 8/20/2026 |
| 1.3.0-preview.8 | 60 | 8/20/2026 |
| 1.3.0-preview.6 | 61 | 8/19/2026 |
| 1.3.0-preview.5 | 60 | 8/19/2026 |
| 1.3.0-preview.4 | 71 | 8/17/2026 |
| 1.3.0-preview.3 | 66 | 8/10/2026 |
| 1.3.0-preview.2 | 54 | 8/10/2026 |
| 1.3.0-preview.1 | 56 | 8/10/2026 |
| 1.2.0-preview.3 | 57 | 8/5/2026 |
| 1.2.0-preview.2 | 65 | 8/4/2026 |
| 1.2.0-preview.1 | 68 | 8/4/2026 |
| 1.1.0-preview.1 | 64 | 7/31/2026 |
| 1.0.2-preview.8 | 69 | 7/29/2026 |
| 1.0.2-preview.7 | 55 | 7/28/2026 |
| 1.0.1 | 167 | 6/24/2026 |