Текстовое поле разрешает только IP-адрес в текстовом поле С#C#

Место общения программистов C#
Anonymous
Текстовое поле разрешает только IP-адрес в текстовом поле С#

Сообщение Anonymous »

Я пытаюсь сделать так, чтобы в текстовом поле были разрешены только IP-адреса без проверки через Интернет. У меня будет «частный void textBox3_TextChanged» или «timer1_Tick», который выполнит эту работу. и каждый раз, когда я печатаю или он тикает, он проверяет, является ли он действительным. Вот почему я хочу, чтобы он работал быстро, и для проверки его корректности использовал только простой локальный код, то есть 0.0.0.0 - 255.255.255.255.

Во-первых, он должен ничего не делать, но когда ip записан, запускается таймер, который затем проверяет, доступен ли ip или нет. Целью этого является то, что когда IP-адрес будет записан, графическое поле станет красным, если IP-адрес недоступен примерно через 4 секунды, а если он доступен, он станет зеленым, а затем остановится до «textbox3_TextChanged»
Я пробовал что-то вроде ping, но он вылетал, если ничего не вводилось, и зависал, если IP был недоступен:

Код: Выделить всё

private void timer1_Tick(object sender, EventArgs e)
{
Ping pingSender = new Ping();
PingOptions options = new PingOptions();

options.DontFragment = false;

// Create a buffer of 32 bytes of data to be transmitted.
string data = "ping";
byte[] buffer = Encoding.ASCII.GetBytes(data);
int timeout = 120;
PingReply reply = pingSender.Send(textBox3.Text, timeout, buffer, options);
if (reply.Status == IPStatus.Success)
{
pictureBox4.BackColor = Color.LimeGreen;
}
else
pictureBox4.BackColor = Color.Red;
}
Вот скриншот: https://i.sstatic.net/yF7LK.jpg

Пожалуйста, помогите :)

Подробнее здесь: https://stackoverflow.com/questions/378 ... ox-c-sharp

Вернуться в «C#»