web-dev-qa-db-ger.com

Der Name 'InitializeComponent' existiert im aktuellen Kontext nicht. Kann keine Hilfe bei der Suche im Internet bekommen

Hallo, ich erhalte die Fehlermeldung InitializeComponent auf meiner Seite app.xaml.cs. Ich habe das Netz überprüft und alles, aber keine Lösung funktioniert. Bitte helfen Sie.

InitializeComponent existiert nicht

C # -Datei:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Navigation;
using System.Windows.Shapes;
using Microsoft.Phone.Controls;
using Microsoft.Phone.Shell;
using Newtonsoft.Json;

namespace Miser_sApp
{
     public partial class App : Application
    {
          /// <summary>
         /// Provides easy access to the root frame of the Phone Application.
         /// </summary> 
         /// <returns>The root frame of the Phone Application.</returns>
          public PhoneApplicationFrame RootFrame { get; private set; }

         /// <summary> 
         /// Constructor for the Application object.
         /// </summary>
        public App()
         {
             // Global handler for uncaught exceptions. 
              UnhandledException += Application_UnhandledException;

             // Standard Silverlight initialization
             InitializeComponent();

             // Phone-specific initialization
            InitializePhoneApplication();

            // Show graphics profiling information while debugging.
            if (System.Diagnostics.Debugger.IsAttached)
            {
                // Display the current frame rate counters.
                Application.Current.Host.Settings.EnableFrameRateCounter = true;

                // Show the areas of the app that are being redrawn in each frame.
                //Application.Current.Host.Settings.EnableRedrawRegions = true;

                // Enable non-production analysis visualization mode, 
                 // which shows areas of a page that are handed off to GPU with a colored overlay.
                //Application.Current.Host.Settings.EnableCacheVisualization = true;

                // Disable the application idle detection by setting the UserIdleDetectionMode property of the
                // application's PhoneApplicationService object to Disabled.
                 // Caution:- Use this under debug mode only. Application that disables user idle detection will continue to run
                // and consume battery power when the user is not using the phone.
                PhoneApplicationService.Current.UserIdleDetectionMode = IdleDetectionMode.Disabled;
            }

       }

        // Code to execute when the application is launching (eg, from Start)
        // This code will not execute when the application is reactivated
        private void Application_Launching(object sender, LaunchingEventArgs e)
        {
        }

        // Code to execute when the application is activated (brought to foreground)
        // This code will not execute when the application is first launched
        private void Application_Activated(object sender, ActivatedEventArgs e)
        {
        }

         // Code to execute when the application is deactivated (sent to background)
        // This code will not execute when the application is closing
        private void Application_Deactivated(object sender, DeactivatedEventArgs e)
        {
        }

        // Code to execute when the application is closing (eg, user hit Back)
        // This code will not execute when the application is deactivated
        private void Application_Closing(object sender, ClosingEventArgs e)
        {
        }

        // Code to execute if a navigation fails
        private void RootFrame_NavigationFailed(object sender, NavigationFailedEventArgs e)
       {
            if (System.Diagnostics.Debugger.IsAttached)
            {
                // A navigation has failed; break into the debugger
                System.Diagnostics.Debugger.Break();
            }
        }

        // Code to execute on Unhandled Exceptions
        private void Application_UnhandledException(object sender,    ApplicationUnhandledExceptionEventArgs e)
        {
            if (System.Diagnostics.Debugger.IsAttached)
            {
                // An unhandled exception has occurred; break into the debugger
                System.Diagnostics.Debugger.Break();
            }
       }

        #region Phone application initialization

        // Avoid double-initialization
        private bool phoneApplicationInitialized = false;

        // Do not add any additional code to this method
        private void InitializePhoneApplication()
        {
            if (phoneApplicationInitialized)
                return;

            // Create the frame but don't set it as RootVisual yet; this allows the splash
            // screen to remain active until the application is ready to render.
            RootFrame = new PhoneApplicationFrame();
            RootFrame.Navigated += CompleteInitializePhoneApplication;

            // Handle navigation failures
            RootFrame.NavigationFailed += RootFrame_NavigationFailed;

            // Ensure we don't initialize again
            phoneApplicationInitialized = true;
        }

        // Do not add any additional code to this method
        private void CompleteInitializePhoneApplication(object sender, NavigationEventArgs e)
        {
             // Set the root visual to allow the application to render
            if (RootVisual != RootFrame)
                RootVisual = RootFrame;

            // Remove this handler since it is no longer needed
             RootFrame.Navigated -= CompleteInitializePhoneApplication;
        }

        #endregion
    }
}

XAML-Datei:

<Application 
    x:Class="Miser_sApp.App"
    xmlns="http://schemas.Microsoft.com/winfx/2006/xaml/presentation"       
    xmlns:x="http://schemas.Microsoft.com/winfx/2006/xaml"
    xmlns:phone="clr-namespace:Microsoft.Phone.Controls;Assembly=Microsoft.Phone"
    xmlns:Shell="clr-namespace:Microsoft.Phone.Shell;Assembly=Microsoft.Phone">

    <!--Application Resources-->
    <Application.Resources>
    </Application.Resources>

    <Application.ApplicationLifetimeObjects>
        <!--Required object that handles lifetime events for the application-->
        <Shell:PhoneApplicationService 
            Launching="Application_Launching" Closing="Application_Closing" 
            Activated="Application_Activated" Deactivated="Application_Deactivated"/>
    </Application.ApplicationLifetimeObjects>

</Application>

Ich habe den Inhalt von app.xaml Hochgeladen. Ich habe keine Änderungen daran vorgenommen.

30
nik

Es gibt zwei mögliche Ursachen dafür.

  1. Am häufigsten ist, dass x: Class nicht mit dem Namespace MainPage.xaml übereinstimmt. Stellen Sie sicher, dass x: Class in MainPage.xaml den richtigen Namespace hat.

  2. Die zweithäufigste Ursache für dieses Problem ist, dass "Build Action" für MainPage.xaml nicht auf "Page" festgelegt ist!

111
Rich Bianco

Dies ist hier die gleiche Frage und Antwort: Der Name 'InitializeComponent' existiert im aktuellen Kontext nicht

Diese Fehlermeldung wird möglicherweise angezeigt, wenn Sie eine Klasse aus einem anderen Projekt importieren oder den Pfad der XAML-Datei oder den Namespace der XAML- oder der C-Datei ändern.

Eins: Möglicherweise hat es einen Namespace, der nicht mit dem übereinstimmt, den Sie in Ihrem neuen Projekt haben

namespace TrainerB.MVC.Forms
{
     public partial class AboutDeveloper : ContentPage
     {
          public AboutDeveloper()
          {
               InitializeComponent();
          }
     }
}

Wie Sie sehen, beginnt der Namensraum in der importierten Datei mit dem alten Projektnamen: "TrainerB" , aber Ihr neues Projekt hat möglicherweise einen anderen Namen. Ändern Sie ihn daher einfach in den richtigen neuen Projektnamen, sowohl in der XAML-Datei als auch in der CS-Datei hinter dem Projekt.

Zwei:

ändern Sie die Eigenschaften der XAML-Datei in:

Build-Aktion: Eingebettete Ressource

Benutzerdefiniertes Tool: MSBuild: UpdateDesignTimeXaml

Xaml file properties

Xaml Namespace Correcting 01

Xaml Namespace Correcting 02

13
Reader Man San
  1. Stellen Sie sicher, dass die BuildAction Ihrer App.xaml auf "ApplicationDefinition" eingestellt ist.
  2. Löschen Sie den Ordner "obj" im Projekt und erstellen Sie ihn neu.
  3. Wenn das Problem weiterhin besteht, entfernen Sie das Zeichen "_" in Ihrem Namespace.
4
Soonts

Ich hatte den gleichen Erstellungsfehler, aber die Erstellungsaktion war bereits auf Seite eingestellt. Der Versuch, die Build-Aktion auf ApplicationDefinition zu setzen (Fehler: Es kann nur eine Instanz davon geben) und sie wieder auf Page zu setzen, hat den Build-Fehler behoben. Klingt nach schwarzer Magie, hat aber bei mir funktioniert.

2
Roland

1) Überprüfen Sie in der xaml-Datei das x: Name des Hauptlayouts. Umbenennen 2) Kompilieren. Es sollte Fehler auslösen. 3) Gehen Sie zurück zur XAML-Datei und geben Sie denselben Klassennamen an, den der zugehörige Code hinter der Datei hat (CS-Datei). Fügen Sie auch den Namespace hinzu. Beispiel: Wenn der Namespace "X" und der Klassenname "Y" ist, ist x: Name = "X.Y". 4) Kompilieren. Es sollte funktionieren.

0
Nahid

Hier ist eine weitere Möglichkeit, nachdem Sie alle oben genannten Möglichkeiten ausgeschöpft haben (sowie einige andere, die über das Internet verstreut sind): Stellen Sie sicher, dass Ihr Startup-Objekt auf der Registerkarte Projekteigenschaften> Anwendung auf [Projekt] .App eingestellt ist.

Ich hatte einige Namespaces umbenannt und irgendwo im Prozess VS das Startup-Objekt auf "(nicht gesetzt)" gesetzt.

0
gcyoung

Meine Lösung bestand darin, die Build Action-Eigenschaft von Package.appxmanifest auf AppxManifest festzulegen. :)

0
debeka

Wenn der Fehler auftritt, schließen Sie VS nach erfolgreicher Erstellung, und löschen Sie den verborgenen Ordner .vs in Ihrem Projekt (dies löscht Intellisense). Open VS, der Fehler ist weg.

0
pollaris

Das hat bei mir funktioniert, Try Ctrl+S auf den Seiten, die Ihnen diesen Fehler geben. Der Fehler trat auf, als mein Visual Studio abstürzte (neu gestartet). Die Seiten, an denen ich gearbeitet habe (vor dem Neustart), konnten nicht erstellt werden. Was mich zu der Annahme brachte, dass das nicht richtig gespeichert wurde. Daher, Ctrl+S. Das hat mein Problem gelöst.

0
Terry Mosoma

In meinem Fall hatte ich die Build-Aktion der XAML-Seite auf Embedded Resource Gesetzt und das Problem durch Zurücksetzen auf Page behoben.

0
Prateek