
c# textBox清空的问题
想要通过button按钮实现textbox清空和赋值操作,於是写了以下测试程序,为什麽第二次按下button无法实现textbox的清空,通过调试程序执行到textBox...
想要通过button按钮实现textbox清空和赋值操作,於是写了以下测试程序,为什麽第二次按下button无法实现textbox的清空,通过调试程序执行到 textBox1.Clear();textbox里的内容是有被清空的,为什麽界面上上textbox却伤害上次的数据,没有被清空?
private void button1_Click(object sender, EventArgs e)
{
textBox1.Clear();
thread.sleep(1000);
textBox1.Text = "string test";
} 展开
private void button1_Click(object sender, EventArgs e)
{
textBox1.Clear();
thread.sleep(1000);
textBox1.Text = "string test";
} 展开
4个回答
展开全部
要用线程去做.
点击button1后,textBox1中内容清空,然后等待1秒,1秒后string test又出现了.
Thread thd;
private void button1_Click(object sender, EventArgs e)
{
textBox1.Text = "";
thd = new Thread(new ThreadStart(Clear));
thd.Start();
thd.Join();
textBox1.Text = "string test";
}
private void Clear()
{
Thread.Sleep(1000);
thd.Abort();
}
展开全部
你两次都执行textBox1.Text = "string test",第二次点击时当然还是为string test
追问
那textBox1.Clear();执行的话不是应该会出现textbox被清空的瞬间,所以後面我添加了延时程序thread.sleep(1000);
实际执行并没有看到textbox被清空,但是调试看textbox.text的值在执行clear之後是有清空的,这是为什麽呢?
追答
如果thread.sleep(1000)挂起的是textBox线程那就能理解了,它自然就不会清空了,因为被你挂起了。不知道是不是这个原因。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
textBox1.Clear();换成textBox1.text="";
更多追问追答
追问
有换成textBox1.text=”“和textBox1.text=null都试过,没有清空的过程
追答
private void button1_Click(object sender, EventArgs e)
{
textBox1.Text = "";
timer1.Start();
}
private void timer1_Tick(object sender, EventArgs e)
{
timer1.Interval = 1000;
textBox1.Text = "asdasd";
timer1.Stop();
}
你的问题出在 Thread.Sleep(1000);上,你还不如给个timer呢,在timer里给控件赋值,这样你就能看到效果了
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
textBox1.Text = "string test";
无论你点击多少次,会变化吗?!
无论你点击多少次,会变化吗?!
追问
我提的问题和你说的这句赋值根本就没有关系
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询