C# 多线程/调用问题:(
我有2个脚本1-Soket.cs Soket Server使用线程FormMain.cs正常工作我使用以下代码从Soket.cs调用FormMain中的函数:C# 多线程/调用问题:(,c#,C#,我有2个脚本1-Soket.cs Soket Server使用线程FormMain.cs正常工作我使用以下代码从Soket.cs调用FormMain中的函数: public void ResiveFunc(string FuncResive) { string FuncName = ""; string FuncValue = ""; for (int i = 0; i <= 2; i++) { FuncName += FuncResiv
public void ResiveFunc(string FuncResive)
{
string FuncName = "";
string FuncValue = "";
for (int i = 0; i <= 2; i++)
{
FuncName += FuncResive[i];
}
for (int j = 4; j <= FuncResive.Length - 1; j++)
{
FuncValue += FuncResive[j];
}
MessageBox.Show(FuncName);
MessageBox.Show(FuncValue);
if (FuncName == "TAB")
{
Form1 mainForm = new Form1();
mainForm.AdverFilter(FuncValue);
}
}
我在FormMain中调用此AdverFilter函数:
public void AdverFilter(string value)
{
if (this.InvokeRequired)
{
this.BeginInvoke(new Action<string>(AdverFilter),value);
}
else
{
this.richTextBox1.Text = value;
MessageBox.Show("AdverFilter(string value)");
MessageBox.Show(this.richTextBox1.Text);
}
}
但它不起作用!!!Messagebox显示的值很好,但函数结束后,richtextbox.text在GUI中为空…请告诉我如何解决此问题…!?发送字符串克隆:
mainForm.AdverFilter(FuncValue.Clone());
this.BeginInvoke(new Action<string>(AdverFilter),value.Clone());
我修正了你的拼写如果你真的是多头的,我建议你找一个非常有能力的心理学家。RichTextBox文本属性不是只用于阅读吗?不,我不能更改任何其他字符串objectError 2与“Passage2005.Form1.AdverFilterstring”的最佳重载方法匹配有一些无效的参数错误3参数“1”:无法从“m”转换ethod group'到'string'它是克隆…使用…您想要的是方法的返回值,而不是方法本身。字符串是不可变的,因此克隆没有帮助。