LayoutAwarePage n’existe pas dans l’espace de noms VS2012 bug?

J’essaie d’obtenir un contrat de recherche sur mon application Win 8, mais après l’ajout d’un contrat de recherche à mon projet, l’erreur d’espace de noms suivante s’affiche:

LayoutAwarePage does not exist in namespace App1.Common. 

J’ai les déclarations d’espace de noms correctes dans le xaml:

 xmlns:common="using:App1.Common" 

et LayoutAwarePage se trouve dans l’espace de nom correct App1.Common

Redémarrer VS2012 ou effectuer une suppression et une reconstruction n’aident pas. Pour répliquer ce problème, essayez ce qui suit:

1) créer une nouvelle application de métro vierge

2) append des références au runtime Visual C ++

3) ajoutez un contrat de recherche au projet (cliquez sur Oui pour append automatiquement d’autres éléments tels que LayoutAwarePage, etc.)

4) reconstruire et ouvrir SearchResultsPage1.xaml

Si vous suivez les étapes ci-dessus, vous devriez voir l’erreur et noter également que SearchResultsPage1 ne s’affiche pas dans le concepteur.

Ce problème se produit uniquement lorsque vous ajoutez la référence au runtime Visual C ++. Sans cette référence, append un contrat de recherche marche très bien!

Des idées? Qu’est-ce que j’oublie ici? Pouvez-vous reproduire le problème en utilisant les étapes ci-dessus?

Je viens de rencontrer le même problème.

La fermeture de VS et la suppression du fichier SUO correspondant (dans le dossier de la solution, peuvent être masqués) s’est déroulée comme un charme.

Vous devez append une référence au WinRTXamlToolkit: à partir de VS2012 Express

  1. Faites un clic droit sur l’item “Références”;
  2. Sélectionnez “Gérer les paquets NuGet …”;
  3. Dans le menu de gauche dans la nouvelle fenêtre, sélectionnez “Online”, puis “Windows & Packages”;
  4. Recherchez la bibliothèque nommée “WinRTXamlToolkit”, sélectionnez-la puis cliquez sur le bouton “Installer”.

S’il vous plaît fermez tous les tabs dans VS si ouvert.

Puis cliquez sur Build-> solution propre

clic suivant build-> reconstruire la solution

Ouvrez maintenant le fichier xaml.

J’espère que ça va marcher

Pour moi, ce bug insupportable a été résolu simplement en passant de Debug Any à CPU x86 et même avec le concepteur ouvert, il est revenu à la vie. Ensuite, lorsque vous avez terminé, vous pouvez fermer et revenir à n’importe quel processeur et construire parfaitement.

J’ai supprimé la référence au kit de développement logiciel Bing Maps et redéfini la cible de la plate-forme sur N’importe quel processeur, ce qui a résolu le problème pour moi.

J’ai eu ce problème harcelant qui aurait pu être lié à l’utilisation de l’add-on SQLite pour Windows RT (v3.7.15) et des erreurs aléatoires “Le mode Création n’est pas disponible pour les plates-formes cibles x64 et ARM”.

Quoi qu’il en soit, pour moi, tout fonctionne bien maintenant, y compris la fonctionnalité de mise en page, une fois que j’ai modifié la plate-forme cible en x86 pour le projet ET la solution .

Cliquez donc avec le bouton droit de la souris sur le projet et la solution dans l’Explorateur de solutions, cliquez sur Propriétés et sélectionnez une architecture x86.

Cela me rend un peu nerveux de ne pas avoir pour cible “Tout processeur”, donc si quelqu’un sait comment faire fonctionner cela avec SQLite et les pages sensibles à la présentation, veuillez append un commentaire.

Fermez tout le fichier xaml et reconstruisez le projet. Si vous avez des erreurs dans les fichiers cs, corrigez-les d’abord. Pour moi, il était facile d’append du public static MainPage Current; à la page principale.

Je viens de décharger le projet et de le recharger dans VS’2012 et il a commencé à fonctionner. Aucune suppression nécessaire.

J’ai eu une longue liste de bugs similaires lors de la compilation d’une application UWP. Caché parmi eux, cependant, plusieurs erreurs de compilation authentiques. Lorsque j’ai corrigé les véritables erreurs, les références manquantes ont également disparu.

Donc, corrigez d’abord les autres erreurs de compilation et voyez si ces erreurs “manquantes dans l’espace de noms” disparaissent ensuite.

EDIT: Mon collègue a également eu ce bug dans VS 2017. Le nettoyage de la solution via le menu Générer n’a pas fonctionné. Cliquez avec le bouton droit sur les projets dans l’Explorateur de solutions et nettoyez-les, puis reconstruisez-les.

EDIT2: Je viens d’avoir ce problème à nouveau. 22 erreurs “manquant dans l’espace de noms”.
J’avais supprimé un gestionnaire de boutons d’un ViewModel, mais j’avais oublié de supprimer le bouton du code XAML. Lorsque j’ai corrigé cette erreur réelle, les 22 erreurs “manquant dans l’espace de noms” ont également disparu.