簡體   English   中英

調用Bing.Maps.Location類構造函數時發生異常

[英]Exception when calling Bing.Maps.Location class constructor

在Windows 8的Bing Maps控件上使用存儲應用程序時,在非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線程上做某事,還是我在這里遺漏了什么?

我沒有進入代碼來查看Bing Maps類中發生了什么,但是您無法在UI線程之外創建任何Bing Map“ UI”對象。 我認為構造函數僅測試是否在主線程上調用了它,如果不是,則拋出異常。

這意味着您必須實例化UI線程上的Location對象,還必須實例化折線,圖釘,圖層等。

必須在UI線程內創建將添加到地圖控件的任何元素。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM