4

CoreDispatcherUIスレッドでUI要素を更新できるように、作業項目をUIスレッドDispatcherに送信できるように、Windows Phone 8でC++を取得しようとしています。しかし、私が電話するとCoreWindow::GetCurrentForThread()、私はNULL戻ってきます。ドキュメントには、これは WP8 でサポートされていると記載されています。現在のウィンドウを取得している限りNULL、現在のウィンドウを取得することはできませんDispatcher。WP8で現在のDispatcherを取得する方法を知っている人はいますか?

4

2 に答える 2

2

CoreWindow::GetForCurrentThread()返品として文書化されています:

CoreWindow現在アクティブなスレッドの。

CoreWindow(UI以外のスレッドのように)を持たないスレッドからこの関数を呼び出すと、この関数はを返しnullptrます。

アプリケーションの初期化が完了し、ビューがあると仮定すると、を介してアプリケーションのメインビューからディスパッチャーを使用できますCoreApplication::MainView。または、UIスレッドのforを非UIスレッドで実行されているコードに渡してDispatcher^、UIスレッドに再度呼び出す必要があるときにアクセスできるようにすることもできます。

于 2013-01-24T16:04:17.043 に答える