当我将 www.stackoverflow.com 添加到我的 RichTextBox 并运行程序时,它显示为蓝色并作为超链接显示,但是当我单击它时,什么也没有发生。我怎样才能解决这个问题?
Jade M
问问题
58105 次
4 回答
139
确保 text 属性包含有效的 url。例如http://www.stackoverflow.com/
将DetectUrls属性设置为true
为LinkClicked事件编写事件处理程序。
就个人而言,我不会像 Microsoft 建议的那样将“IExplore.exe”作为参数传递给Process.Start调用,因为这假定它已安装,并且是用户的首选浏览器。如果您只是将 url 传递给 process start(如下所示),那么 Windows 将做正确的事情并使用适当的 url 启动用户的首选浏览器。
private void mRichTextBox_LinkClicked (object sender, LinkClickedEventArgs e) {
System.Diagnostics.Process.Start(e.LinkText);
}
于 2009-01-12T14:54:28.097 回答
10
RichTextBox 类允许您自定义用户单击超链接时的行为。为RichTextBox.LinkClicked事件添加事件处理程序
Process p = new Process();
private void richTextBox1_LinkClicked(object sender, LinkClickedEventArgs e)
{
p = Process.Start("IExplore.exe", e.LinkText);
}
于 2009-01-12T14:43:42.877 回答
2
您应该确保将DetectUrls
其设置为true
. 如果这本身不起作用,您可能需要为该LinkClicked
事件添加一个处理程序。
于 2009-01-12T14:46:09.767 回答
1
yourTextBox.DetectUrls
设置为真?我们可能需要更多信息来提供更好的答案。
于 2009-01-12T14:43:25.093 回答