我正在建立一个胜利的应用程序,在那里,我有一个动态填充的textBox,我有一个复选框,当checkBox.Checked=true
我的应用程序中的所有消息框都会弹出
(不是所有的一次,只是确认msg的,我一个接一个地编码它。)
我的问题是,当checkBox
被选中时,我的TextBox.Text
正在填充其数据但是当取消选中checkBox
时,TextBox.text
没有填满数据,很奇怪事情是当我尝试调试它时,TextBox.Text
显示文本,但是gui TextBox.Text
上没有填充,现在数据在哪里?
public void Recharge()
{
txtTransactionMsgDelegate(Tm) // this is delegate function which fills the text
//textbox.text=tm; i tried this one too,but no use
}
if (Program.AutoManual == "Auto")
{
if (chkShowMsg.Checked)
{
if (returnRows < 1)
MessageBox.Show(Program.StatusMessage + " But Local Db Failed, NOTEDOWN IN NOTEBOOK");
else
MessageBox.Show(Program.StatusMessage + " And Local Db update SuccessFul, RUN UPDATE RECHARGE LATER");
}
}
代表职能:
// m using this delegate b'coz my above function i.e Recharge() is under BackGroundWorker Thread i.e BackGroundWorker_DoWork() event;
private void txtTransactionMsgDelegate(string Text)
{
if (txtTransactionMsg.InvokeRequired)
{
txtTransactionMsg.Invoke(new Action(delegate() { txtTransactionMsgDelegate(Text); }));
}
else
txtTransactionMsg.Text = Text;
}
答案 0 :(得分:2)
要确保在GUI上更新文本框,您应该调用txtTransactionMsg.Refresh();