Как сделать переход на другую страницу wpf

Обновлено: 07.07.2024

У меня есть это для моего button внутри моего Page1.xaml :

И для обработчика событий button:

Мне нужно связать button со страницей (не главной страницей), например, когда я нажимаю на button, чтобы перейти на страницу, например (страница местоположения)? private void setupLocationPageButton() < Button LocationPageButton = (Button) findViewById(R.id.btnLocationPage);.

как перейти на другую страницу после отправки заголовка? У меня есть некоторые коды, записанные в моем файле шаблона, я хочу с помощью php перейти на другую страницу ,когда какое-то условие истинно, но я не могу использовать команду заголовка здесь, так как информация заголовка была отправлена в.

Решение моего собственного вопроса:

Я чувствую себя немного глупо, предлагая решение своего собственного вопроса, но благодаря ссылке Джасти я смог разобраться в своем коде. Поскольку он только опубликовал комментарий, я не могу отметить его как ответ, поэтому вот решение.

Я изменил NavigationWindow на окно и вставил:

И в конструкторе MainWindow.xaml.cs я добавил:

Затем последним шагом было настроить обработчик событий button на:

Вы должны использовать это, это сработало для меня :

В вашем решении есть variable type страницы с правильным именем page.xaml. после этого вы должны использовать его методы, чтобы сделать это функционально.

Используйте любой контейнер и привязывайте содержимое к любому свойству в вашей viewmodel или codebehind. После этого вам просто нужно обновить свойство, установив новую страницу и вызвав PropertyChanged-событие (см. Интерфейс INotifyPropertyChanged). Это обновит содержимое вашего контейнера, и вы сможете отображать все, что захотите.

В случае, если вам нужно отдельное окно

(Переформатированный код не тестировался)

Мое решение состояло в том, чтобы добавить рамку в Главное окно MainWindow.xaml

1-переход от основного windows к button щелчку мыши:

2 - в случае навигации со страницы внутри фрейма ex Projects.xaml

Кроме того, вы можете добавить еще один метод расширения, который ожидает другой объект Page , если вы хотите передать параметры конструктору

Похожие вопросы:

В Silverlight как я могу запустить / перейти на другую страницу?

Что плохого в этом коде ? он должен открыть первую страницу для button, а затем перейти на следующую страницу для просмотра изображений ? GameView класс для просмотра изображений MainActivity класс.

Я должен сделать переключатель страниц в приложение WPF. public static class Switcher < public static MainWindow pageSwitcher; public static void Switch(UserControl newPage)

Мне нужно связать button со страницей (не главной страницей), например, когда я нажимаю на button, чтобы перейти на страницу, например (страница местоположения)? private void.

как перейти на другую страницу после отправки заголовка? У меня есть некоторые коды, записанные в моем файле шаблона, я хочу с помощью php перейти на другую страницу ,когда какое-то условие истинно.

Как я могу перейти на другую страницу после отображения предупреждения JavaScript? Спасибо,: D Каков следующий код для перехода на другую страницу? if(isset ($_POST['reply']))< echo.

Я хочу перейти на другую страницу после входа в систему с помощью facebook. Прямо сейчас я могу войти в систему с помощью Facebook и остаться на той же странице, но я хочу перейти на другую.

Я видел несколько предложений, что вы можете добавить гиперссылку на приложение WPF через Hyperlink элемент управления.

Вот как я пытаюсь использовать это в своем коде:

Я получаю следующую ошибку:

Что я делаю не так?

Если вы хотите, чтобы ваше приложение открывало ссылку в веб-браузере, вам нужно добавить HyperLink с установленным событием RequestNavigate для функции, которая программно открывает веб-браузер с адресом в качестве параметра.

В коде сзади вам нужно добавить что-то похожее на это для обработки события RequestNavigate.

Кроме того, вам также понадобится следующий импорт.

Это будет выглядеть в вашем приложении.

оо

В дополнение к ответу Fuji мы можем сделать обработчик многоразовым, превратив его в присоединенное свойство:

И используйте это так:

Hyperlink это не элемент управления, это элемент содержимого потока , его можно использовать только в элементах управления, которые поддерживают содержимое потока, например a TextBlock . TextBoxes иметь только простой текст.

ИМХО самый простой способ - использовать новый элемент управления, унаследованный от Hyperlink :

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

Я использовал ответ в этом вопросе, и у меня возникли проблемы с ним.

После небольшого расследования. Оказывается, если ваше приложение WPF - .CORE, вам нужно сделать UseShellExecute это true .

Это упоминается в документах Microsoft :

Итак, чтобы сделать эту работу вам нужно добавить UseShellExecute в true :

@HighPlainsGrifter, чтобы просто понять, что вы сделали UseShelExecute = true, но все еще имеете ту же проблему? если это так, попробуйте запустить вашу визуальную студию в режиме администратора (запуск от имени администратора). Я думаю, что для этого процесса необходим доступ к ресурсам, требующим прав администратора. И это верно только для проектов .core. дайте мне знать, если это поможет, чтобы я мог обновить свой ответ.

@HighPlainsGrifter еще не уверен, что это может быть, если у вас есть исходный код, я бы потратил некоторое время на его отладку, но не буду ничего обещать. :)

К сожалению, не совсем совместный код - мне просто пришлось пока не использовать гиперссылку, а не задерживать проект. Спасибо, в любом случае.

Мне понравилась идея Артура о многоразовом обработчике, но я думаю, что есть более простой способ сделать это:

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

Читайте также: