Итак, я думаю, что проблема в том, что при инициализации привязки элемент UIElement не создается (null). После слов о привязке не сообщается, что объект создан.
Привязка к свойствам проще, объект должен реализовать INotifyPropertyChanged
или DependencyObject
позаботиться о свойствах зависимостей.
Чтобы решить вашу проблему, вы можете установить Delay
для Binding
, скажем, 1000 мс, тогда он будет работать. Сомнительно, что это правильный путь.
<commandArgument:RedirectToUriCommandArgument Page="{Binding ElementName=PageFrame, Delay=1000}" Uri="MainView.xaml"></commandArgument:RedirectToUriCommandArgument>
Правильный путь - просто установить источник привязки в UIElement:
<commandArgument:RedirectToUriCommandArgument Page="{Binding Source={x:reference PageFrame}}" Uri="MainView.xaml"></commandArgument:RedirectToUriCommandArgument>