-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Description
See discussion in #3259 for context.
Background:
WPF's theme assemblies (PresentationFramework.Aero
, PresentationFramework.Aero2
, PresentationFramework.AeroLite
, PresentationFramework.Classic
, PresentationFramework.Luna
and PresentationFramework.Royale
) expose the same types.
For e.g., DataGridHeaderBorder.
These assemblies can be used in two ways.
Typically, they are used as resource assemblies. i.e., they are not referenced from the project, and instead, XAML resources within them are consumed as resources using <ResourceDictionary ..>
. When used this way, all of these assemblies can (and often are) used in to supply themes contextually (i.e., depending on the system theme, for e.g., or some other user preference).
Less commonly, they are directly referenced and their types are either consumed in XAML or directly in code. When used this way, only one assembly can be referenced directly. If more than one assembly needs to be referenced, namespace aliasing has to be used.
Problem:
The current SDK/FrameworkReference design in .NET Core always enables references to each of these assemblies. This makes them virtually unusable. We need a better scheme/solution.
/cc @nguerrera, @rladuca, @dsplaisted
cc @dotnet/wpf-developers