microsoft / microsoft-ui-xaml

Windows UI Library: the latest Windows 10 native controls and Fluent styles for your applications
MIT License
6.26k stars 673 forks source link

ContentDialog does not follow RequestedTheme properly in XAML Islands #7405

Open aquinn39 opened 2 years ago

aquinn39 commented 2 years ago

Describe the bug

When a ContentDialog is shown within an XAML Island and it's RequestedTheme does not match the current Windows theme, it does not apply properly (See screenshot below) - mainly the buttons appear to use the wrong RequestedTheme.

Steps to reproduce the bug

  1. Create an app that uses WinUI 2 with XAML Islands (Tutorial here: https://docs.microsoft.com/en-us/windows/apps/desktop/modernize/host-standard-control-with-xaml-islands).
  2. Set Windows' app mode to Dark
  3. Create a ContentDialog with it's requested theme set to Light in XAML and show it.

Expected behavior

The buttons should be in light mode, like the rest of the dialog. This is what happens with the same setup in a UWP app:

image

Screenshots

Here is a ContentDialog in an XAML Island with its RequestedTheme set to Light while the Windows theme is set to dark. Notice that the buttons don't seem to realise they should be in light mode, making the text very hard to read:

image

NuGet package version

Microsoft.UI.Xaml 2.8.0

Windows app type

Device form factor

Desktop

Windows version

Windows 11 (21H2): Build 22000

Additional context

No response

aquinn39 commented 2 years ago

I found some more information about this, it seems the Windows Terminal team has come across this issue as well. See these for some more details about this problem:

https://github.com/microsoft/terminal/pull/5224 https://github.com/microsoft/terminal/issues/12356 https://github.com/microsoft/terminal/issues/3917 https://github.com/microsoft/terminal/issues/3654 https://github.com/microsoft/terminal/issues/5195

github-actions[bot] commented 1 year ago

This issue is stale because it has been open 180 days with no activity. Remove stale label or comment or this will be closed in 5 days.

aquinn39 commented 1 year ago

Still happens in the latest version of WinUI 2 and Windows 11.

zadjii-msft commented 1 month ago

@bpulliam Y'all may want to dedupe with #2331. My limited reading of these two is that they're effectively the same.