【发布时间】:2010-05-20 06:14:34
【问题描述】:
这是我在这个网站上找到的修改后的代码。
当向 TextBox 追加文本且 InvoveRequired 为 false 时,文本将显示在框中,但下次调用该函数且 InvokeRequired 为 true 时,第一次调用放置的文本字符串将丢失 ("")。当 InvokeRequired 为 true 时,多次调用按预期工作。
comBox 是一个 TextBox 类型,multline = true。
任何帮助将不胜感激。
public void LogComText(string comText, bool newline)
{
if (comBox.InvokeRequired)
{
comBox.BeginInvoke(new Action(delegate
{
LogComText(comText, newline);
}));
return;
}
comBox.AppendText(comText);
if (newline) comBox.AppendText(Environment.NewLine);
}
【问题讨论】:
-
这太令人惊讶了...您能否创建一个简短但完整的程序来演示该问题?
-
我肯定会说,在你的程序中的其他地方你会做一个
combBox.Text = ""或类似的东西。