我有一个属性,可以使用Invoke()
(来自线程)的方法和同一类中没有invoke()
的方法进行修改。
这可能吗?既然可以在某些方法中影响条件。
例如:
public class Test{
public bool testBool { get; set; }
public void MethodWIthInvoke(){
this.Invoke(new Action(() =>
{
if (testBool)
{
testBool = false;
}
}));
}
public void Method(){
if (testBool)
{
testBool = false;
}
}
}
答案 0 :(得分:-1)
我不知道为什么你需要以这种方式编写代码,因为这两个方法都将从同一个线程调用然后就可以了。我想建议另一种编写代码的方法如下:
public class Test{
public bool testBool { get; set; }
public void Method()
{
if (this.InvokeRequired)
{
this.Invoke(new Action(() =>
{
if (testBool)
{
testBool = false;
}
}));
}
else
{
if (testBool)
{
testBool = false;
}
}
}
}