Reputation: 670
Create a new WPF project called: xmlnsError
Add a reference to PresentationFramework.Aero
Add this ResourceDictionary
to App.xaml
:
<ResourceDictionary Source="/PresentationFramework.Aero,Version=4.0.0.0,Culture=Neutral,PublicKeyToken=31bf3856ad364e35,processorArchitecture=MSIL;component/themes/Aero.NormalColor.xaml"/>
Doing so shows a warning of
Assembly 'PresentationFramework.Aero,Version=4.0.0.0,Culture=Neutral,PublicKeyToken=31bf3856ad364e35,processorArchitecture=MSIL' is not referenced by this project
I've double-checked to make sure that the version is actually 4.0.0.0
and the PublicKeyToken is actually 31bf3856ad364e35
by navigating to C:\Windows\Microsoft.NET\assembly\GAC_MSIL\PresentationFramework.Aero
as well as checking the GAC at runtime by looking at the AssemblyInfo from AppDomain.CurrentDomain.GetAssemblies();
Is there any way to fix this warning? This a follow-up question to WPF Windows 8 Compatability Issue
Upvotes: 11
Views: 3678
Reputation: 13008
I had a very similar problem when trying to use PresentationFramework.Classic
. I got the same warning even after triple checking all the assembly details were correct (which were copy/pasted from dotPeek anyway).
However, it seems that this warning may be spurious because the compiled application works just fine. I was testing on a "clean" virtual machine image where I am confident that nothing has polluted the environment e.g. an unwanted local copy of PresentationFramework.Classic.dll
is not in the application folder.
Also, as noted by @Maverik in a comment:
I truly think this is a designer analysis limitation and you can ignore this particular warning as long as it actually works fine.
which seems to be the same conclusion.
https://stackoverflow.com/a/8185946/3195477
Upvotes: 0
Reputation: 44
Normally, you do not need to specify the assembly version, culture, and key when using resources from an assembly. The following example compiles without any warnings:
<ResourceDictionary Source="/PresentationFramework.Aero;component/themes/Aero.NormalColor.xaml"/>
Upvotes: 2
Reputation: 1981
Apparently (MSDN Forums), there's a metadata-only version of Aero and the right one is in C:\Windows\Microsoft.NET\Framework\v4.0.30319\WPF
. I don't have any way of checking if there's been a similar problem/solution for any of the .NET 4.5 versions, at the moment.
Upvotes: 0