0

Windows 8 ストア アプリの Bing マップ コントロールを使用する場合、非 UI スレッドで新しいLocation オブジェクトを作成すると、例外が発生します。

WinRT 情報: アプリケーションは、別のスレッド用にマーシャリングされたインターフェイスを呼び出しました。

通常、これはバックグラウンド スレッドから UI を不適切に更新しようとしていることを意味しますが、空の Windows 8 ストア アプリ プロジェクトにボタンを配置することで再現できるため、これは当てはまりません。

<Button Content="Click me" Click="Button_Click"/>

そして、次のようにイベント ハンドラーを追加します。

private void Button_Click(object sender, RoutedEventArgs e)
{
    Task.Run(() =>
    {
        var loc = new Location(1, 1);
    });
}

Location 構造体のコンストラクターは本当に UI スレッドで何かを行っていますか、それともここで何か不足していますか?

4

1 に答える 1