02/10/11 10:13
jaco94++
Salve!
Come posso aggiungere un nuovo elemento in una listbox presente nel form da un nuovo thread in esecuzione?
Ho provato in questo modo ma non succede nulla e non si verificano neanche errori:
Come posso aggiungere un nuovo elemento in una listbox presente nel form da un nuovo thread in esecuzione?
Ho provato in questo modo ma non succede nulla e non si verificano neanche errori:
public class tsl:Finder { public void ls() { TcpListener newex = null; Int32 port = 9100; IPAddress localAddr = IPAddress.Any; newex = new TcpListener(localAddr, port); newex.Start(); Byte[] bytes = new Byte[256]; string Mid=""; string name = ""; while (true) { TcpClient me = newex.AcceptTcpClient(); if (me.Connected == true) { NetworkStream r_stream = me.GetStream(); int i; while ((i = r_stream.Read(bytes, 0, bytes.Length)) != 0) { temp=System.Text.Encoding.ASCII.GetString(bytes,0,i); } } if (temp.Substring(0, 2) == "CD") { Mid = temp.Substring(2, 10); name = temp.Substring(12); // vengono eseguite ma non viene aggiunto nulla listBox1.BeginUpdate(); listBox1.Items.Add(new { UserName = data1, MachineID = data2 }); listBox1.DisplayMember = "UserName"; listBox1.ValueMember = "MachineID"; listBox1.EndUpdate(); } } } } . . . private void Finder_Load(object sender, EventArgs e) { tsl tsl = new tsl(); Thread T_tsl = new Thread(tsl.ls); T_tsl.Start(); }
aaa