1
我的应用程序中有一个多行文本框,其文本要清除。在WinForms应用程序中清除多行文本框的问题
的问题是,当我使用清除
textBox.Text = ""
or
textBox.Clear()
文本只有第一行被清除。其他行仍然存在,但无法删除,如果我开始在文本框中输入,其他行将被覆盖,这导致我认为这是一个重新绘制问题,但无法弄清楚为什么会发生这种情况。
该文本框位于可以最小化的窗体内的自定义用户控件中。问题出现在窗体最小化然后恢复之后。
我试图在控件上和文本框上调用Refresh
来触发重绘,但它不起作用。
是否有另一种方法触发重绘事件来解决这个问题?不知道我在这里做错了什么。
编辑:
这是一个代码示例。调用ShowForm
方法来恢复最小化的表单。
public static void ShowForm()
{
if (!myForm.Visible)
{
myForm.PopulateForm();
myForm.Show();
myForm.Activate();
myForm.WindowState = FormWindowState.Normal;
}
}
和内部PopulateForm
(这是myForm
的方法),I清除文本框的文本:
public void PopulateForm()
{
this.myControl.myTextBox.Clear();
}
this.myControl
是包含文本框
你能提供你的代码吗? – 2012-02-06 13:18:51
在我的情况下,您在自己的问题中提供的内容不会发生在自定义用户文本框中。它使用textBox.Clear()命令成功清除数据。 – 2012-02-06 13:24:44
@ThitLwinOo:我在代码中添加了一段代码。谢谢你的帮助。 – SzilardD 2012-02-06 13:29:37