WPF Frame Source Обновление загруженной страницы - PullRequest
3 голосов
/ 22 апреля 2009

Я столкнулся со странным сценарием, когда фрейм отказывается обновлять свой контент.

Я могу понять, что происходит, но решение не приходит ко мне.

У меня есть страница с рамкой (Frame1) и несколькими кнопками. Когда я нажимаю на кнопку, страница загружается во фрейм. Это прекрасно работает в большинстве ситуаций.

Private Sub btnIncidents_Click(ByVal sender As Object, ByVal e As System.Windows.RoutedEventArgs) Handles btnIncidents.Click
    Frame1.Source = New System.Uri("/Incident/Incidents.xaml", UriKind.Relative)
End Sub

Тем не менее, у меня есть ситуация, когда мне нужно выбрать кнопку, которая была ранее нажата, чтобы эффективно выполнить обновление для Uri. Проблема в том, что он просто ничего не делает, потому что Uri не изменился. Это имеет смысл, но это не то, что я хочу, мне нужно позвонить еще раз.

Моим первым решением было представить Frame1.Refresh, который изначально добился цели. Но как только страница обновилась, ни одна из кнопок не смогла загрузить другую страницу.

Это было так, как если бы я вызывал Frame1.Refresh, и я сломал способность Frames переходить на другие страницы.

Моя вторая идея состояла в том, чтобы установить для источника Frame значение Nothing (Null), а затем установить для источника URI, но это тоже не сработало. т.е. Frame1.Source = Nothing

Кто-нибудь еще сталкивался с этим или, может быть, есть какие-то предложения? Мне просто нужно обновить / обновить страницу фреймов, не ломая фрейм!

1 Ответ

6 голосов
/ 05 октября 2009

У меня была похожая проблема - хотя с HTML. Разрешил это с

frame.NavigationService.Refresh();

, видимо, очистит историю навигации, но в моем случае мне все равно.

Получил ответ от http://social.msdn.microsoft.com/Forums/en-US/wpf/thread/8fc6bd83-2803-4820-a22b-d4d87638c4e2

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...