0

そのような場合の答えが見つかりません:

アプリケーションに WebView があり、サーバーから取得した HTML をそこにロードします。これは正常に機能します。ただし、すべての HTML ページと同様に、他のサイトへのリンクがあります。WebView を電話ブラウザで外部リンクを開くにはどうすればよいですか?

ここに私のコールバックがあります:

<div style="font-weight:bold;"><p style="text-align: justify;">No 6. līdz 17. jūlijam Kazaņā, Krievijā notieko&scaron;ajā XXVII Pasaules vasaras Universiādē Latvijas komandu pārstāvēs 23 Rīgas Tehniskās universitātes (RTU) studenti, kas būs lielākā pārstāvniecība starp Latvijas augstskolām.</p></div><div><p style="text-align: justify;">Latviju vērienīgajā sporta pasākumā &scaron;ogad pārstāvēs rekordliels dalībnieku skaits -120 sportisti no dažādām Latvijas augstskolām. Kopumā pasākumā piedalīsies 162 valstu komandas ar 10 442 sportistiem, sacen&scaron;oties 351 sporta veidā. Tas ir vairāk nekā Londonas Olimpiskajās spēlēs izdalītie 302 medaļu komplekti.</p><p>http://www.google.lv</p>

私はこのようなことをします:

string callback = HttpRequest...
WebView.NavigateToString(callback );

コールバック ページで外部リンクを開くプロパティはありますか?

編集:

私のページにはこれがあります:

<phone:WebBrowser Name="ArticleContent" />

そしてC#で私はやっています:

ArticleContent.NavigateToString(callback);

私のコールバック (HTML 文字列) には、hrefs (インターネットの他のページへのリンク) もあります。アプリではなく、外部電話ブラウザでリンクを開く方法

編集 2.0:

Toni Petrina のおかげで、次のコードができました。

private void ArticleContent_Navigating(object sender, NavigatingEventArgs e)
    {
        WebBrowserTask webBrowserTask = new WebBrowserTask();
        //webBrowserTask.Uri = new Uri(e.Uri.ToString(), UriKind.Absolute);
        //webBrowserTask.Show();
        webBrowserTask.URL = e.Uri.ToString();
        webBrowserTask.Show();
    }

Phones ブラウザが開き、ページに移動します。この部分は問題ありません。戻るボタンを使用してアプリに戻り、WebView で別のリンクをクリックすると、WebView でページが開きます -どうですか? (これは、リンクを 2 回、3 回、または 4 回クリックすると、常にランダムに表示されます)。

編集 3.0:

イベントをキャンセルするのを忘れました: e.Cancel = true;

4

1 に答える 1