Необходимо иметь ссылку на представление, с которым вы хотите получить доступ к диспетчеру. Если вы создадите, вы как-то сохраните его, см. Ниже. В качестве альтернативы вы можете получить доступ ко всему виду, называя это:
IReadOnlyList<CoreApplicationView> views = CoreApplication.Views;
Однако вид не имеет непосредственно доступный идентификатор, так что вам нужно получить идентификатор, вызвав следующее после того, как был активировано в диспетчере для него :
await newView.Dispatcher.RunAsync(CoreDispatcherPriority.Normal,() => {
Frame frame = new Frame();
frame.Navigate(typeof(SecondaryPage), null);
Window.Current.Content = frame;
// You have to activate the window in order to show it later.
Window.Current.Activate();
newViewId = ApplicationView.GetForCurrentView().Id;
});
Тогда я хотел бы предложить, чтобы создать свой собственный IDictionary<int, CoreApplicationView>
иметь отображение между идентификаторами и ваших взглядов. В качестве альтернативы вы можете также получить идентификатор по
newViewId = ApplicationView.GetApplicationViewIdForWindow(newView.CoreWindow);
(некоторые дополнительные documentation)