C#中的靜態函式,如何操作Form中的控制元件
阿新 • • 發佈:2019-01-23
1.第一個問題,關於,回撥函式是否必須為靜態函式或者全域性函式?
2.第二個問題,靜態函式,如何操作Form中的控制元件?
public static Form1 form1;
public Form1()
{
InitializeComponent();
form1 = this;
}
state.workSocket = handler;
handler.BeginReceive(state.buffer, 0, StateObject.BufferSize, 0, new AsyncCallback(ReadCallback), state);
public static void ReadCallback(IAsyncResult ar)
{
Form1.form1.textBoxReceive.AppendText(strmsgtemp);
}
3.第三個問題:非建立控制元件執行緒,無法訪問
//非建立控制元件執行緒,無法訪問
//richTextBox1.AppendText(Encoding.ASCII.GetString(data, 0, recvlength));
delegate void richtexttip();
richtexttip richtext3 = delegate()
{
richTextBox1.AppendText("client:"+Encoding.Unicode.GetString(data, 0, recvlength) + "\r\n");
};
richTextBox1.Invoke(richtext3);