回調函數方法是靜態函數,需要調用窗體控件,賦值或取值。
定義 public static Form1 mainFrm; mainFrm = this;
public partial class Form1 : Form { public static Form1 mainFrm; public Form1() { mainFrm = this; InitializeComponent(); }
public static void WaitCallBackReceiveConnectedInfo(string connecetedIp,string leaveIp) { Form1.mainFrm.rtxtMsg.BeginInvoke(new InvokeDelegate(InvokeMethod), new object[] { connecetedIp, leaveIp }); } public delegate void InvokeDelegate(string connecetedIp, string leaveIp); public static void InvokeMethod(string connecetedIp, string leaveIp) { if (connecetedIp != "") { Form1.mainFrm.cmbConnectedIP.Items.Add(connecetedIp); Form1.mainFrm.rtxtMsg.AppendText(connecetedIp+" 連接上來\r\n"); Form1.mainFrm.cmbConnectedIP.SelectedIndex = 0; } if (leaveIp != "") { Form1.mainFrm.cmbConnectedIP.Items.Remove(leaveIp); Form1.mainFrm.rtxtMsg.AppendText(leaveIp + " 離開\r\n"); } }