C# winform 使用RichtextBox控件中指定内容作为超链接
目前开发的模块通过richtextbox控件传输文本信息,信息中传递的产品编号以英文开头如:T20120912001等等,希望实现让这类编号以超链接的形式展现,用户如果单击该链接通过LinkClicked就可以获得该编号来实现其他功能。
尝试过使用LinkLabel 加载到richtextbox但展示效果极差,请教有什么其他办法能实现?
------解决方案--------------------
richtextbox 中只有是链接地址才会显示超链接形式的,,还是用LinkLable显示吧
------解决方案--------------------
找了一段资料你看看是否有帮助?
---Visual   Studio      
使用   Windows   窗体   RichTextBox   控件显示   Web   样式的链接请参见  
RichTextBox.DetectUrls   属性   |   RichTextBox.LinkClicked   事件   |   RichTextBox   类   |   RichTextBox   控件(Windows   窗体)   |   可在   Windows   窗体中使用的控件  
Windows   窗体   RichTextBox   控件可以将   Web   链接显示为彩色或下划线形式。可以编写代码,在单击链接时打开浏览器窗口,该窗口中显示链接文本中指定的   Web   站点。  
使用   RichTextBox   控件链接到   Web   页  
将   Text   属性设置为包含有效   URL(例如“http://www.Microsoft.com/china”)的字符串。  
确保将   DetectUrls   属性设置为   true(默认)。  
实例化   Process   对象的全局实例。  
为向浏览器发送所需文本的   LinkClicked   事件编写事件处理程序。  
在下面的示例中,LinkClicked   事件根据在   RichTextBox   控件的   Text   属性中指定的   URL   打开   Internet   Explorer   的一个实例。此示例假定窗体具有   RichTextBox   控件。  
安全说明       在调用   Start   方法时,如果您由于没有足够的特权而在部分信任的上下文中运行代码,则将遇到   System.Security.SecurityException   异常。有关更多信息,请参见代码访问安全性基础知识。  
'   Visual   Basic  
Public   p   As   New   System.Diagnostics.Process  
Private   Sub   RichTextBox1_LinkClicked   _  
     (ByVal   sender   As   Object,   ByVal   e   As   _  
     System.Windows.Forms.LinkClickedEventArgs)   _  
     Handles   RichTextBox1.LinkClicked  
           '   Call   Process.Start   method   to   open   a   browser  
           '   with   link   text   as   URL.  
           p   =   System.Diagnostics.Process.Start( "IExplore.exe ",   e.LinkText)  
End   Sub  
//   C#  
public   System.Diagnostics.Process   p   =   new   System.Diagnostics.Process();  
private   void   richTextBox1_LinkClicked(object   sender,  
System.Windows.Forms.LinkClickedEventArgs   e)  
{  
     //   Call   Process.Start   method   to   open   a   browser  
     //   with   link   text   as   URL.  
     p   =   System.Diagnostics.Process.Start( "IExplore.exe ",   e.LinkText);  
}  
------解决方案--------------------
CFM_LINK, EM_SETCHARFORMAT