2012-10-01 31 views
0

我在C#中的richtextbox中有一個鏈接。當我在URL鏈接上時,我想顯示一個菜單。如果它不是一個網址,那麼我不想展示任何東西。現在我點擊鼠標向下的事件,並根據鼠標指針位置選擇線,如果選定的線是有效的網址,我會顯示菜單。它工作的很好,但是當我在url旁邊有一些文本時,仍然會將該行檢測爲有效的url並出現菜單。此外,我也無法使用鼠標更改事件。關於我如何完成我想要做的事情的任何想法?右鍵點擊富文本框中的URL的事件

感謝,

回答

1

不知道這是你在找什麼,但我相信,你會發現優於本

你可以試試這個當鼠標按下稱爲

private void richTextBox1_MouseDown(object sender, MouseEventArgs e) 
{ 
    // Continue if the Right mouse button was clicked 
    if (e.Button == MouseButtons.Right) 
    { 
     // Check if the selected item starts with http:// 
     if (richTextBox1.SelectedText.IndexOf("http://") > -1) 
     { 
      // Avoid popping the menu if the value contains spaces 
      if (richTextBox1.SelectedText.Contains(' ')) 
      { 
       // Show the menu 
       contextMenuStrip1.Show(Cursor.Position.X, Cursor.Position.Y); 
      } 
     } 
    } 
} 

還是這個當鏈接被點擊,但這並不適用於鼠標右鍵點擊

private void richTextBox1_LinkClicked(object sender, LinkClickedEventArgs e) 
{ 
    contextMenuStrip1.Show(Cursor.Position.X, Cursor.Position.Y); 
} 

謝謝,

我希望這有助於:)