0

Изображение с ошибкой Изображение с ошибкой

Вызов нужного окна в C#

public partial class MainWindow : Window
{
    public MainWindow()
    {
        InitializeComponent();
    }
private void Button_Click(object sender, RoutedEventArgs e)
{
    MainFrame.Content = new PlantsPage();
}

}

Код в WPF

<Grid>
    <Grid.RowDefinitions>
        <RowDefinition Height="75"/>
        <RowDefinition Height="*"/>
        <RowDefinition Height="30"/>
    </Grid.RowDefinitions>
    <Image Source="/Resources/logo.png" HorizontalAlignment="Left"></Image>
    <TextBlock Text="Header" FontSize="30" HorizontalAlignment="Center" VerticalAlignment="Center"></TextBlock>
    <Grid Background="White" ZIndex="-2"></Grid>
    <Grid Grid.Row="2" Background="#76e383"></Grid>
    <Button Name="PlantsPage" Grid.Row="1" Content="Go" Background="White" 
            Height="60" Width="200" FontSize="30" 
            Click="Button_Click"></Button>
    <Frame Name="MainFrame" Grid.Row="1"></Frame>
</Grid>
Kirill
  • 21
  • 4
  • Научитесь использовать основные элементы WPF, а именно XAML и привязки. Так вы поймете, что использование контролов в коде C# плохо. Потом вы поймете, что Frame не очень хорошее решение для отображения контента. И да, не давайте код в виде скринов, это очень плохая практика, ведь нам придется в случае чего переписывать все руками, а также поиск по вашему вопросу не будет работать, из-за чего другие люди не найдут ваш вопрос если столкнутся с аналогичной проблемой. Если разбирать саму ошибку, то какой тип у PlantsPage? – EvgeniyZ Dec 03 '22 at 15:14
  • Пожалуйста, исправьте вопрос, чтобы он отражал конкретную проблему с достаточным количеством деталей для возможности дать адекватный ответ. – Дух сообщества Dec 03 '22 at 15:17
  • EvgeniyZ, а где посмотреть, какой тип у PlantsPage? И что можно использовать вместе Frame для отображения контента? – Kirill Dec 03 '22 at 15:56
  • Не забывайте ставить @ перед ником, ибо я так не вижу уведомлений. "Какой тип" - смотрите в коде, например вон у вас окно public partial class MainWindow : Window наследуется от Window, это и есть тип. Либо можете в XAML посмотреть, там в самом начале пишет <Window .... В WPF бывают окна (Window), страницы (Page) и Пользовательские контролы (UserControl). Frame принимает именно страницы (Page), а судя по ошибки, у вас там явно не страница. – EvgeniyZ Dec 03 '22 at 16:28
  • 1
    "Замена Frame" - у вас должно быть нечто такое, это самый основной и минимальный вариант отображения контента, который отлично подходит под привязки. Вот можете посмотреть полноценный пример приложения со страницами. – EvgeniyZ Dec 03 '22 at 16:29

1 Answers1

1

Ошибка заключалась в том, что я делал обращение к окну, а не к странице. введите сюда описание изображения

Kirill
  • 21
  • 4