Skip to content

Render to .NET MAUI XAML Controls does not work #34058

@r2d2Proton

Description

@r2d2Proton

Description

I am impressed with VS2026 performance. Returned back to trying to build a cross-platform level editor using .NET MAUI. I found C# Vulkan code, forked it, made some changes (https://github.com/r2d2Proton/VulkanSamples). Start the solution file. Set the starting project to AndroidApp, .NET MAUI based, or set the startup to GLTFScene. WinForms based. I cannot get rendering to work XAML. I created a non-parented, fullscreen window and render into it. Anyway to render into the XAML controls? Anyway to create a control that allows rendering into it? Any help is appreciated. Copilot has a lot to say about it. It has a tendency to be very verbose - and positive in the most elegant way.

Steps to Reproduce

Download the repository.
Set the starting project to AndroidApp, .NET MAUI based.

The source is under AndroidApp.
The problem occurs in https://github.com/r2d2Proton/VulkanSamples/blob/main/src/Samples/AndroidApp/Platforms/Windows/Controls/SwapChainPanel.cs in the SwapChainPanel class.

Link to public reproduction project repository

https://github.com/r2d2Proton/VulkanSamples

Version with bug

10.0.20

Is this a regression from previous behavior?

Not sure, did not test other versions

Last version that worked well

No response

Affected platforms

Windows, Android

Affected platform versions

maui-windows 10.0.20/10.0.100 VS 18.3.11505.172

Did you find any workaround?

Image

Relevant log output

E:\Dev\Repos\r2d2Proton\VulkanSamples\Notes>dotnet workload list

Workload version: 10.0.100-manifests.c992be6d

Installed Workload Id      Manifest Version         Installation Source
-----------------------------------------------------------------------
android                    36.1.2/10.0.100          VS 18.3.11505.172
ios                        26.2.10191/10.0.100      VS 18.3.11505.172
maccatalyst                26.2.10191/10.0.100      VS 18.3.11505.172
maui-windows               10.0.20/10.0.100         VS 18.3.11505.172

Use `dotnet workload search` to find additional workloads to install.

Metadata

Metadata

Assignees

No one assigned

    Labels

    t/bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions