委托 获得控件的值

获得控件值

private
void goscript()
{
//别的线程里的调用哇~
string _school = returnHand(returnBrowserHandle);
}

//建立个委托
private delegate string returnHandle();

//搞个最简单滴取值滴方法~
private string returnBrowserHandle()
{
return Browser.Handle.ToString();
}

//判断一下是不是该用Invoke滴~,不是就直接返回~
private string returnHand(returnHandle myhandle)
{
if (this.InvokeRequired)
{
return (string)this.Invoke(myhandle);
}
else
{
return myhandle();
}
}

给控件赋值  用了事件

public delegate void OnChangedEvent(int message);
public event OnChangedEvent ChangedEvent;
private void OnChangedText(int message)
{
if (this.uRichTextBox.InvokeRequired)
{
OnChangedEvent handle = new OnChangedEvent(this.OnChangedText);
this.Invoke(handle, new object[] { message });
}
else
{
this.uRichTextBox.setcolorline(message);
}
}

这个最恶心了   招了好久  给控件传参

delegate void invokeControls(int i);

void SetLabelText(int i)
{
Invoke(new invokeControls(OnSetLabelText), i);
}

void OnSetLabelText(int i)
{
uRichTextBox.setcolorline(i);
}




原文地址:https://www.cnblogs.com/ccqin/p/2297974.html