这段代码有什么问题?试图让我的文本插入文本框的开头而不是底部。

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,它没有任何区别。我错过了别的什么吗?

谢谢,Psy

有帮助吗?

解决方案

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");
}

其他提示

TextBox上的SelectionStart属性将确定将从中选择或插入文本。

使用此代码在文本框控件的开头插入代码:

TextBox.SelectionStart = 0;
TextBox.SelectedText = "Start time: " + printTime();
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top