www.stackoverflow.com を RichTextBox に追加してプログラムを実行すると、青色でハイパーリンクとして表示されますが、クリックしても何も起こりません。どうすればこれを修正できますか?
4 に答える
text プロパティに有効な URL が含まれていることを確認してください。例http://www.stackoverflow.com/
DetectUrlsプロパティをtrueに設定します
LinkClickedイベントのイベント ハンドラーを記述します。
個人的には、「IExplore.exe」をProcess.Start呼び出しにパラメーターとして渡すことはありません。これは、インストールされていることを前提としており、ユーザーの優先ブラウザーであるためです。(以下のように) プロセス開始に URL を渡すだけの場合、Windows は正しいことを行い、適切な URL を使用してユーザーの優先ブラウザーを起動します。
private void mRichTextBox_LinkClicked (object sender, LinkClickedEventArgs e) {
System.Diagnostics.Process.Start(e.LinkText);
}
RichTextBox クラスを使用すると、ユーザーがハイパーリンクをクリックしたときの動作をカスタマイズできます。RichTextBox.LinkClickedイベントのイベント ハンドラーを追加します。
Process p = new Process();
private void richTextBox1_LinkClicked(object sender, LinkClickedEventArgs e)
{
p = Process.Start("IExplore.exe", e.LinkText);
}
DetectUrls
が に設定されていることを確認してくださいtrue
。それが単独で機能しない場合は、LinkClicked
イベントのハンドラーを追加する必要がある場合があります。
yourTextBox.DetectUrls
true に設定されていますか? より良い回答を提供するには、さらに情報が必要になる場合があります。