C#初学者求助textbox.Invoke(resetMsgTxtCallBack, new object[] { textbox })
游荡孔明 2013-09-28 09:30:19 以下代码是:使用委托,根据控件的InvokeRequired属性判断当前控件的更新操作是否是在另一个线程中。如果是,则使用委托进行方法调用并更新控件。
delegate void ResetMsgTxtCallBack(TextBox textbox);
private void ResetMsgTxt(TextBox textbox)
{
if (textbox.InvokeRequired)
{
ResetMsgTxtCallBack resetMsgTxtCallBack = ResetMsgTxt;
textbox.Invoke(resetMsgTxtCallBack, new object[] { textbox });
}
else
{
textbox.Clear();
textbox.Focus();
}
}
----------------------------------------------------------
1.textbox.Invoke方法里为什么用new object[] { textbox }作参数?
2.为什么这样回调后就会跳转到else里面呢?
总体来说 :就是这一句textbox.Invoke(resetMsgTxtCallBack, new object[] { textbox });后面为什么用new object[] { textbox }做参数我不懂
求前辈们指点