Как можно реализовать переключение Frame на странице MainWindow по нажатию на кнопку на странице Greeting? Я пытался сделать так, но такой вариант не работает
private void btnShowLicence_Click(object sender, RoutedEventArgs e)
{
MainWindow.ContentFrame.Navigate(new Uri("Licence.xaml", UriKind.Relative));
}
Main Page
<DockPanel Width="auto" Height="auto" >
<Frame Name="ContentFrame" NavigationUIVisibility="Hidden" Focusable="false" Width="auto" Height="auto" Navigated="ContentFrame_Navigated"/>
</DockPanel>
Frame. Ну а так, подумайте сами "переключение Frame на странице MainWindow по нажатию на кнопку на странице Greeting" - наверно ваша страницаGreetingдолжна иметь ссылку наMainWindowи уже через эту ссылку взаимодействовать с контрогами окна. – EvgeniyZ Feb 27 '20 at 10:51Text="{Binding MyProperty}"). Используя контролы из кода, вы многого себя лишаете и многое будете писать (я уверен) в виде костылей. Имея все это, люди придумали MVVM подход, где все делится на строгие слои, где UI - один слой, а код - другой слой и они не связаны друг с другом. Как только вы это все поймете, я вам советую такой вариант реализации. – EvgeniyZ Feb 27 '20 at 14:49Frame- это уже довольно давно устаревший и ограниченный контрол, который не позволит вам многого. Его задача лишь в отображение страницы, не более. По этой причине я вам и говорю - откажитесь от него! По поводу ссылки, я имел ввиду нечто, на подобиеvar page = new SecondPage(this);, гдеthis- этоMainWindow, переданный через конструктор в класс. – EvgeniyZ Feb 27 '20 at 14:53