2013-01-15 6 views
5

Nel mio codice App.xaml Ho il codice seguente:Come risolvere: il costrutto del linguaggio XAML2009 non è permesso qui?

<Application x:Class="PcgTools.App" 
    ... 
    <Application.Resources> 
     <ResourceDictionary> 
      ... 
      <res:Strings x:FactoryMethod="res:StringResourceHelper.GetStringResources" 
      x:Key="LocStrings"/> 
     </ResourceDictionary> 
    </Application.Resources> 
</Application> 

ho ottenuto dal compilatore VS2012 un errore prima di utilizzare la FactoryMethod o attributo costruire. Ma ora ottengo l'errore: il costrutto del linguaggio Xaml2009 non è permesso qui.

Come risolvere il problema?

risposta

7

XAML 2009 non è consentito in XAML compilato (almeno non in WPF 4.0), provare a spostare il materiale che utilizza i costrutti del 2009 in un file del dizionario delle risorse separato.

10

XAML 2009 è sfortunatamente inutile a causa della mancanza di supporto del compilatore (sebbene VS lo riconosca per qualche stupido motivo).

See: MSDN doc on XAML 2009

Fondamentalmente no compilatore corrente (WPF, SL, WinRT) in realtà lo supporta. Per quanto ne so, l'unica cosa che supporta XAML 2009 è "loose xaml", dove si ha un file xaml autonomo che viene aperto direttamente da un browser (che è fondamentalmente inutile).

Non so di alcuna spiegazione da parte di Microsoft che spieghi perché mai non è supportato. :-(

Problemi correlati