【发布时间】:2015-06-16 23:44:24
【问题描述】:
我在我的应用程序中使用了richtextbox。 我提供了一个文件资源管理器链接。当点击该链接时,它会打开相应的位置。
public partial class Form1 : Form
{
string link = string.Empty;
public Form1()
{
link = "file://D:\\Lenovo\\OneKey App\\OneKey Recovery";
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
//richTextBox1.Text = "C:\SVN";
richTextBox1.Font = new Font("Consolas", 20f, FontStyle.Bold);
richTextBox1.BackColor = Color.LightGray;
richTextBox1.Text = link;
richTextBox1.AppendText("\n Clicks the above link & learn about richtext box.");
}
private void richTextBox1_LinkClicked(object sender, LinkClickedEventArgs e)
{
System.Diagnostics.Process.Start("Explorer.exe", link);
}
}
这是我的代码。它可以正常工作。但是,如果文件夹名称中有空格,则表示它确实在富文本框中显示了完整的链接。
我的结果:
"file://D:\Lenovo\OneKey" App\OneKey 恢复
链接最多只显示一键。其他文本看起来像普通的 Richbox 文本。 如果链接文本有空格,如何将整个文本作为链接?
【问题讨论】:
-
使用不间断空格将文本保持在一起:richTextBox1.Text = link.Replace(' ', '\u00a0');
-
顺便说一句,您应该对文件路径使用逐字字符串,因为它们更具可读性。 link = @"file://D:\Lenovo\OneKey App\OneKey Recovery";
标签: c# .net winforms hyperlink richtextbox