2012-02-16 6 views
3

C#とXAMLで書かれたメトロスタイルのアプリケーションにウェブページに誘導するハイパーリンクボタンを追加する必要があります。 Silverlightと同様に、NavigateURIオプションはありません。ハイパーリンクを特定のWebページにリダイレクトさせるオプションはありますか?Visual Studio 11(Windows 8)でXAMLのハイパーリンクボタンを追加

答えて

1

Silverlightについてはわかりませんが、WPF(SLとほとんど同じです)では、インラインタグがハイパーリンクであるTextBlockがあります。

<TextBlock> 
    Some text 
    <Hyperlink 
     NavigateUri="http://somesite.com" 
     RequestNavigate="Hyperlink_RequestNavigate"> 
     some site 
    </Hyperlink> 
    some more text 
</TextBlock> 

Uは "これと同じようにNavigateURIオプションはありません"と述べています。問題ない。

私はNavigateURI b4のこの機能について知りませんでした。だから、私がしたのは、ユーザーがそのリンクをクリックしてブラウザと呼ばれ、要求されたリンクを開くときでした。マウスオーバーでは、カーソルを手とテキストの色のように赤色に変更し、マウスではデフォルトの色(青色)とカーソル(矢印)に戻します。

私はあなたの意見を持っていると思います。

+0

WinRTのコンシューマプレビュー版では、インラインハイパーリンクコントロールを使用できません。 –

0

Windows.System.Launcherには、特定のUriまたはStorageFileに対して適切なアプリケーションを開くためのメソッドがあります。あなたのボタン

1

のクリックイベントまで、私はこれを行うサンプルアプリケーションパックのサンプルがあります

http://zubairahmed.net/?p=266

+0

あなたのコードとMichael Vの答えの成功/失敗の処理を組み合わせると完璧です。彼らはなぜNavigateUriを削除したのかまだ混乱しています。 –

2

のInternet Explorerを起動するためにWindows8 XAMLでHyperlinkBut​​tonをアップ配線についてブログということだけワイヤー。

// Launch a URI. 
    private async void LaunchUriButton_Click(object sender, RoutedEventArgs e) 
    { 
     // Create the URI to launch from a string. 
     var uri = new Uri(uriToLaunch); 

     // Launch the URI. 
     bool success = await Windows.System.Launcher.LaunchUriAsync(uri); 
     if (success) 
     { 
      rootPage.NotifyUser("URI launched: " + uri.AbsoluteUri, NotifyType.StatusMessage); 
     } 
     else 
     { 
      rootPage.NotifyUser("URI launch failed.", NotifyType.ErrorMessage); 
     } 
    } 
+1

これはどのサンプルですか? –

0

念のため誰かが、この時につまずく: 私はRTMとNavigateURIが帰ってきた、デフォルトの地下鉄のブラウザを開き、Windows 8の上のVisual Studio 2012 RTMを使用しています。

関連する問題