Гость
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / Передача параметров на страницу при навигации на неё / 13 сообщений из 13, страница 1 из 1
10.08.2017, 07:02
    #39503030
sposad
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передача параметров на страницу при навигации на неё
Простите, люди, запарился с этим WPF, но разбираться хочется:)
Перерыл всё по сабжу, нашёл примеры, но ни один не пашет. Например

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
//страница навигации
page.NavigationService.Navigate(new Uri("/Page.xaml?parameter=test", UriKind.Relative));

//страница назначения
string parameter = string.Empty;
if (NavigationContext.QueryString.TryGetValue("parameter", out parameter)) {
    this.label.Text = parameter;
}



NavigationContext вообще нет, несмотря, что System.Windows.Navigation подключён

а
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
//страница навигации
 Page2 p2 = new Page2();
NavigationService.Navigate(p2, "sss");

//страница назначения

public Page2()
    {
        InitializeComponent();

        NavigationService.LoadCompleted += NavigationService_LoadCompleted;//ошибка NullReferenceExсeption
    }

    private void button_Click(object sender, RoutedEventArgs e)
    {
        NavigationService.GoBack();
    }

    private void NavigationService_LoadCompleted(object sender, NavigationEventArgs e)
    {
        string str = (string)e.ExtraData;

    }


выдаёт ошибку NullReferenceExсeption при создании new Page2
...
Рейтинг: 0 / 0
12.08.2017, 14:27
    #39504376
iMrTidy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передача параметров на страницу при навигации на неё
sposad,

Не уверен, что Ваш способ это общепринятая практика. Вот Вам простейший пример. Если не получится, то выкладывайте пример Вашего проекта, постараюсь помочь.
...
Рейтинг: 0 / 0
14.08.2017, 08:39
    #39504750
sposad
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передача параметров на страницу при навигации на неё
iMrTidy,

Да откуда же мне знать про общепринятые практики, когда только вот взялся за WPF и делаю перманентно, когда получается время найти? Есть проблема - ищу в инете такие же примерно, смотрю как народ решает. В данном случае понравилось это решение , но воспроизвести его не получается...

Спасибо за пример!
...
Рейтинг: 0 / 0
14.08.2017, 09:39
    #39504774
iMrTidy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передача параметров на страницу при навигации на неё
sposadiMrTidy,

Да откуда же мне знать про общепринятые практики, когда только вот взялся за WPF и делаю перманентно, когда получается время найти? Есть проблема - ищу в инете такие же примерно, смотрю как народ решает. В данном случае понравилось это решение , но воспроизвести его не получается...

Спасибо за пример!

На мой взгляд Вы нашли отличный пример, и попытались сделать навигацию при помощи URI, но видимо упустили, что:
- Передача параметра происходит, например, в событии клика кнопки.
- Получение параметра на событии NavigateTo страницы назначения, либо в конструкторе. Возможно, LoadCompleted тоже подойдёт, но подписываться на своё собственное событие ни к чему.

Пример, что я предложил, передает объект (параметр) напрямую в конструктор страницы, которая создаётся вручную. Я думаю, разберётесь.
...
Рейтинг: 0 / 0
14.08.2017, 10:08
    #39504798
sposad
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передача параметров на страницу при навигации на неё
iMrTidysposadiMrTidy,

Да откуда же мне знать про общепринятые практики, когда только вот взялся за WPF и делаю перманентно, когда получается время найти? Есть проблема - ищу в инете такие же примерно, смотрю как народ решает. В данном случае понравилось это решение , но воспроизвести его не получается...

Спасибо за пример!

На мой взгляд Вы нашли отличный пример, и попытались сделать навигацию при помощи URI, но видимо упустили, что:
- Передача параметра происходит, например, в событии клика кнопки.
- Получение параметра на событии NavigateTo страницы назначения, либо в конструкторе. Возможно, LoadCompleted тоже подойдёт, но подписываться на своё собственное событие ни к чему.

Пример, что я предложил, передает объект (параметр) напрямую в конструктор страницы, которая создаётся вручную. Я думаю, разберётесь.

так угнетает, что NavigationContext вообще у меня отсутствует, хотя нужное пространство System.Windows.Navigation подключено, пока не получается именно поэтому, вот печаль-то...
...
Рейтинг: 0 / 0
14.08.2017, 11:30
    #39504853
Roman Mejtes
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передача параметров на страницу при навигации на неё
sposad,

я хз, за всю свою практику ни разу не пользовался Навигацией в WPF. как по мне бесполезный треш
...
Рейтинг: 0 / 0
14.08.2017, 12:04
    #39504878
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передача параметров на страницу при навигации на неё
Roman Mejtes,
На сотовых только часто применяёт. Согласен.
...
Рейтинг: 0 / 0
14.08.2017, 14:14
    #39504971
iMrTidy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передача параметров на страницу при навигации на неё
sposadiMrTidyпропущено...


На мой взгляд Вы нашли отличный пример, и попытались сделать навигацию при помощи URI, но видимо упустили, что:
- Передача параметра происходит, например, в событии клика кнопки.
- Получение параметра на событии NavigateTo страницы назначения, либо в конструкторе. Возможно, LoadCompleted тоже подойдёт, но подписываться на своё собственное событие ни к чему.

Пример, что я предложил, передает объект (параметр) напрямую в конструктор страницы, которая создаётся вручную. Я думаю, разберётесь.

так угнетает, что NavigationContext вообще у меня отсутствует, хотя нужное пространство System.Windows.Navigation подключено, пока не получается именно поэтому, вот печаль-то...

Потому что у Вас не Silverlight проект.

Вот Вам еще пример, надеюсь, поможет.
...
Рейтинг: 0 / 0
14.08.2017, 14:36
    #39504986
sposad
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передача параметров на страницу при навигации на неё
iMrTidy,

Я для примера соорудил и Silverlight хелловорд, там тоже чего-то этого не было.

Огромное Вам спасибо за примеры.
...
Рейтинг: 0 / 0
14.08.2017, 16:51
    #39505099
iMrTidy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передача параметров на страницу при навигации на неё
sposadiMrTidy,

Я для примера соорудил и Silverlight хелловорд, там тоже чего-то этого не было.

Огромное Вам спасибо за примеры.

Если честно, то, на мой взгляд, нет смысла тратить на Silverlight время. Майкрософт прекратил поддержку этого продукта начиная со студии 2017. Полагаю, что навигационные окна и страницы в рамках WPF, так же не самое перспективное направление, хотя могут быть специфичные задачи. Если есть желание, то можно поиграться с Ribbon, хотя Майкрософт не сильно продвигает и этот продукт.
...
Рейтинг: 0 / 0
14.08.2017, 18:16
    #39505203
Roman Mejtes
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передача параметров на страницу при навигации на неё
iMrTidy,

сейчас у них в тренде UWP, а на WPF положили болт, впрочем как всегда.
Так, что WPF не долго осталось, к счастью он хотя бы останется в .NET
...
Рейтинг: 0 / 0
14.08.2017, 18:20
    #39505206
iMrTidy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передача параметров на страницу при навигации на неё
Roman MejtesiMrTidy,

сейчас у них в тренде UWP, а на WPF положили болт, впрочем как всегда.
Так, что WPF не долго осталось, к счастью он хотя бы останется в .NET

Если я правильно понял, то в UWP есть XAML, и в принципе никто не мешает воплощать MVVM, поэтому WPF, возможно, плавно перейдет в UWP.
...
Рейтинг: 0 / 0
14.08.2017, 19:18
    #39505249
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передача параметров на страницу при навигации на неё
iMrTidy,
Примеры плавного у MS есть?
)))
...
Рейтинг: 0 / 0
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / Передача параметров на страницу при навигации на неё / 13 сообщений из 13, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]