У меня такая проблема. Программа определяет, доступен ли данный IP-адрес, если он доступен, то в ListBox-е создается запись с соотв. айпишником. Делаю так:
Ping pingSender = new Ping();
IPAddress address;
String str;
PingReply reply;
str = textBox1.Text + "." + textBox2.Text + "." + textBox3.Text + "." + textBox4.Text;
IPAddress.TryParse(str, out address);
reply = pingSender.Send(address);
if (reply.Status == IPStatus.Success) listBox1.Items.Add(str);
С этим проблемы нет. Проблема возникает, когда проверяется диапазон адресов. По идее должно быть так: адрес проверен, если он доступен, то отображается в списке, и дальше проверяется след. адрес. Но все не так: доступные адреса отображаются только после проверки всех адресов. Бывает, ждешь пол минуты, только потом отображаются доступные адреса, а это не удобно. Как это можно исправить?