#c# #xaml #new-window
#c# #xaml #новое окно
Вопрос:
У меня есть проект c #, в котором уже работает главное окно, но когда я создал новое окно и использую
Views.Form Form = new Views.Form();
Form.ShowDialog();
Страница открыта, но на ней не отображается XML, который я спроектировал, и я думаю, что проблема в пространствах имен и каталогах, но мне сложно устранить проблему, поэтому это мой обозреватель решений
Properities
References
Model
Acteur.cs
Tache.cs
ViewModels
ActeurViewModel.cs
TacheViewModel.cs
Views
Form.xaml
MainWindow.xaml
App.xaml
Model.edmx
и это код окна формы :
Файл .cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Shapes;
namespace WpfApplication2.Views
{
/// <summary>
/// Interaction logic for Form.xaml
/// </summary>
public partial class Form : Window
{
public Form()
{
}
}
}
файл .xaml
<Window x:Class="WpfApplication2.Form"
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"
xmlns:local="clr-namespace:WpfApplication2"
mc:Ignorable="d"
Title="Form" Height="300" Width="300">
<Grid Background="#FF142683">
<Label Name="Test" Content="this is a test" FontSize="43"/>
</Grid>
</Window>
вызов MainWindow
private void AddButtonClicked(object sender, RoutedEventArgs e)
{
Views.Form Form = new Views.Form();
Form.ShowDialog();
}
Ответ №1:
Вы удалили метод «InitializeComponent();» в конструкторе?
public partial class Window1 : Window
{
public Window1()
{
InitializeComponent();
}
}
Этот метод создается автоматически vs, и он инициализирует те элементы управления, которые вы использовали в XAML.cs.
Поскольку вы удалили этот метод, именно по этой причине вы не можете видеть свои элементы управления.
Просто попробуйте создать новое окно, и вы найдете тот метод, о котором я упоминал.
Комментарии:
1. Я удалил его, потому что он возвращал ошибку Имя ‘InitializeComponent’ не существует в текущем контексте
2. возможно, некоторые другие ошибки компиляции вызывают дезинформацию, сначала вам нужно исправить ошибку в другом месте, а затем ошибка «InitializeComponent» исчезнет.
3. @Oscar эта ошибка часто возникает, если вы меняете пространство имен после добавления окна. В вашем новом окне ничего нет, просто удалите его и запустите новое.