2009-11-30 2 views
2

이 코드가 무슨 문제입니까? 내 텍스트를 아래쪽이 아닌 텍스트 상자의 시작 부분에 삽입하려고합니다.richtextbox 상단에 삽입

 
private void execute_Click(object sender, EventArgs e){ 
    startFinshBox.Text = "Start Time: " + printTime()+""; 
    startFinshBox.Text.Insert(0,printTime()+": Retrieving Results...\n"); 
} 

하지만 두 번째 줄을 rtb에 삽입하지 않습니다. 나는 startFinishBox.SelectionStart = 0으로 시도했지만 아무런 차이가 없었다. 나는 다른 것을 놓치고 있니?

답변

4

startFinshBox.Text 싸이

덕분 C에서 # 불변 타입 문자열이다. string.Insert()은 수정 된 문자열을 결과로 반환하지만 삭제 한 코드는 반환합니다. 작동하려면, 당신이 코드를 변경해야합니다 :

private void execute_Click(object sender, EventArgs e){ 
    startFinshBox.Text = "Start Time: " + printTime()+""; 
    startFinshBox.Text = startFinshBox.Text.Insert(0,printTime()+": Retrieving Results...\n"); 
} 
+0

아를, 나는 덕분에, 그것은 그런 간단한 일이었을 것입니다 알고 있었다! – Psytronic

0

결정합니다 텍스트 상자에 SelectionStart 재산 텍스트가 선택 또는에서 삽입됩니다 .

사용이 코드는 텍스트 상자 컨트롤의 시작 부분에 코드를 삽입합니다 :

TextBox.SelectionStart = 0; 
TextBox.SelectedText = "Start time: " + printTime();