触发事件的线程识别
大家我,比如,我在主线程中开了另一个操作主线程文本框的子线程,现在要求,如果是主线程文本框输入文字产生的事件,可以处理,子线程改变文本框输入文字产生的事件,不要处理,现在想识别到底是哪个线程触发的事件
[解决办法]
在子线程改变text前给textbox的tag做个标记,如:
textBox1.Tag = 2; //子线程里设置
textBox1.Text = "这是子线程";
textBox1.Tag = 1; //然后再改回主线程设置
//在TextChanged事件里通过Tag属性来判断是否是子线程赋值
void textBox1_TextChanged(object sender, EventArgs e)
{
if (textBox1.Tag!=null && (int)textBox1.Tag == 2) //子线程
{
}
else //主线程
{
}
}