2015-09-27 12 views
7

Ho sviluppato un'app di Windows Phone in una squadra da giugno. Fino a oggi tutto ha funzionato bene con tutti i sincronismi. ho sincronizzato il progetto e vs iniziato a darmi gli erroriC# non contiene una definizione per "InitializeComponent" e il nome "controlName" non esiste nel contesto corrente

  • "WindowsPhoneApp.MainPage" non contiene una definizione per InitializeComponent (e in tutte le altre pagine, anche App)
  • Il nome "controlName" non lo fa esistono nel contesto attuale (questo accade in tutte le pagine)

Non ho cambiato nulla, ha funzionato bene ieri. I nomi delle classi su XAML corrispondono ai nomi nel code-behind.
Ho provato a uscire tutte le istanze vs ma i problemi sono ancora presenti.

+0

genrally intializeComponenet sono metodi generati automaticamente in cui sono definiti i controlli che risiedono nel file designer.cs ... durante la sincronizzazione è possibile che sia stato eliminato del codice file designer o del file designer stesso !! – Viru

+0

Provare a chiudere la soluzione, eliminare il file .suo nascosto nella directory della soluzione e riaprire la soluzione. Non so se questo funziona per te, ma ho riscontrato lo stesso problema con silverlight in VS2013. – Silvermind

+0

@Silvermind dove posso trovare esattamente quel file? – User999

risposta

0

Per me, il problema stava seguendo:


Struttura del progetto

Project\Views\Page1.xaml 
Project\Views\Page1.xaml.cs 

L'errore in Page1.xaml.cs a pagina suddetto costruttore:

public sealed partial class Page1 : Page 
{ 
    public Page1() 
    { 
     this.InitializeComponent(); 
    } 
} 

file XAML

<Page 
    x:Class="App1.Page1" 
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
    mc:Ignorable="d"> 

dovrebbe essere x:Class="App1.Views.Page1"

così solo errore di battitura nel nome della classe.

+0

So che è ovvio, ma potrebbe essere utile per chiunque. Questo errore "ha mangiato" 80 minuti del mio tempo. –

Problemi correlati