2014-01-21 50 views
1

上線點擊例如,當選擇整個行/行我有一個包含以下內容的文本框:我怎麼能在一個文本框,在C#

aaa 
bbb 
ccc 

現在,當我點擊一對之一第一行,我希望它自動選擇整個,然後將其複製到另一個文本框,我將如何去做這件事。
只是爲了澄清,如果我在第一行選擇一個,aaa將被複制到另一個文本框。

順便說一下,這是一個Rich文本框。

我把下面的代碼的開頭,因爲它不會允許我出於某種原因的問題。

Private void richTextBox1_MouseClick(object sender, MouseEventArgs e) 
{ 
} 
+0

你確實需要一個文本框?我的理解是,你不會讓用戶在文本框中輸入內容。在這種情況下,你應該用一個簡單的列表框替換你的文本框! –

+0

WinForm? WPF? ASP.Net? WTF.Net? –

+0

史蒂夫謝謝你,我是這樣一個白癡,我不敢相信我沒有那樣做...... – Bodokh

回答

0
// now you need to know what character index starts that line 
var start = textBox.GetFirstCharIndexOfCurrentLine(); 

// and with the line already in hand we can calculate the ending index 
var end = start + textBox.Lines(textBox.GetLineFromCharIndex(start)).Length; 

// now select that range 
textBox.Select(start, end); 
+0

謝謝!但我無法使用.length在線。 – Bodokh

+0

@Bodokh,請參閱我的編輯。 –

0

我試圖做一個RichTextBox控制類似的東西,然後我高興地發現了ShowSelectionMargin財產。當設置爲True時,它會給你一個左邊距,你可以點擊選擇整條線(恰好是我想要的行爲)。

與OP所要求的不完全相同,但可能與尋找此類功能的其他人有關。