J'ai décidé de créer une page de base pour mon projet WPF. Lorsque je crée la page de base et une page héritée dans l'espace de noms du projet, cela fonctionne, mais lorsque je crée un dossier nommé Pages dans le projet et la page de base et une page héritée dans le dossier et son espace de noms n'existe pas dans l'espace de noms "clr-namespace: WpfApplication2.Pages".Page de base wpf. Le nom X n'existe pas dans l'espace de noms Y
Ceci est la page de base. C'est juste une classe ordinaire sans XAML.
namespace WpfApplication2.Pages
{
public class BasePage : Page
{
}
}
Le fichier de page hérité .cs
namespace WpfApplication2.Pages
{
public partial class Page1 : BasePage
{
public Page1()
{
InitializeComponent();
}
}
}
La première ligne de la page héritée. La partie que je change de Page à locale: BasePage. Cela provoque l'erreur.
<local:BasePage x:Class="WpfApplication2.Pages.Page1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:local="clr-namespace:WpfApplication2.Pages"
Screenshot demandé par Ed Plunkett:
J'ai été en mesure d'obtenir ce code exact pour fonctionner. Mon soupçon est qu'il y a quelque chose d'autre qui se passe. Avez-vous * créé * 'Page1' dans le dossier' Pages', ou l'avez-vous déplacé? Le déplacer là pourrait créer des ravages. –
Je l'ai créé à l'intérieur. C'est BasePage 'using System; en utilisant System.Collections.Generic; en utilisant System.Linq; en utilisant System.Text; en utilisant System.Threading.Tasks; en utilisant System.Windows.Controls; WpfApplication4.Pages espace de noms { Classe publique BasePage: page {} } '' – Myoxidae
Page1.xaml.cs using System; en utilisant System.Collections.Generic; en utilisant System.Linq; en utilisant System.Text; en utilisant System.Threading.Tasks; en utilisant System.Windows; en utilisant System.Windows.Controls; en utilisant System.Windows.Data; en utilisant System.Windows.Documents; en utilisant System.Windows.Input; en utilisant System.Windows.Media; en utilisant System.Windows.Media.Imaging; en utilisant System.Windows.Navigation; en utilisant System.Windows.Shapes; namespace WpfApplication4.Pages { public partial class Page1: BasePage { Page1 (public) { InitializeComponent(); } } } ' – Myoxidae