J'ai écrit une application WPF simple VS2010 qui ciblait .NET Framework 4 Client Profile. (En fait, mon application n'utilise pas du tout les fonctionnalités de .NET 4, mais VS2010 a par défaut démarré mon projet en ciblant .NET 4 donc je n'ai pas pris la peine de vérifier)
J'ai constaté que tous les systèmes XP et même quelques Windows 7 de différentes langues ne parvenaient pas à démarrer l'application. J'ai décidé de rétroporter mon application pour cibler .NET Framework 3.5 ou .NET Framework 3.5 Client Profile, en changeant le Framework cible
dans les propriétés de la solution. Mais l'application ne compile pas ou ne se construit pas avec l'erreur suivante sur System.Xaml
et Microsoft.CSharp
:
Warning 1 Impossible de résoudre l'assembly System.Xaml. Le framework cible requis par cet assembly (4.0) est plus élevé que le framework cible du projet. Si cette référence est nécessaire pour votre code, vous pouvez rencontrer des erreurs de compilation. test1
Warning 2 La référence principale "Microsoft.CSharp", qui est une assembly de framework, ne peut pas être résolue dans le framework actuellement ciblé. ".NETFramework,Version=v3.5". Pour résoudre ce problème, supprimez la référence "Microsoft.CSharp" ou retargettez votre application vers une version du framework contenant "Microsoft.CSharp". test1
Warning 3 Le composant référencé 'Microsoft.CSharp' est introuvable.
Warning 4 Le composant référencé 'System.Xaml' est introuvable.
Est-il possible de rétroporter (ou retargetter) une application VS2010 vers .NET 3.5? Si oui, comment faire?
[EDIT]
J'ai découvert qu'il y avait un contrôle - DataGrid - conçu pour être utilisé pour .NET 4. J'ai dû installer WPF Tool Kit pour rétroporter les contrôles vers 3.5. J'espère que quelqu'un trouvera cela utile.