Всем привет.
По ходу написания своего диплома, написал небольшую форму на С# для администрирования базы данных.
В форме выводится таблица, возможно изменять данные ключей, добавлять и удалять ключи. Для работы нужна вторая ардуинка с RFID модулем, чисто как читалка для ключа. Все работает, но есть один нюанс. COM порт, у меня указан конкретно под мое устройство в самом проекте в свойствах SerialPort1.
Собственно нужна помощь, в доработке.
На форму можно добавить combobox с выводом доступных ком портов. При выборе которого, считывание происходило бы именно с него.
На данный момент сделана просто защита от дурака с помощью Button.Enable, т.е. при нажатии кнопки сканировать ключ, все кнопки затухают до тех пор пока не поднесешь ключ к сканеру, поднес, ключ записался в поле ключ, кнопки стали доступны, далее добавляешь, удаляешь или изменяешь данные. На данный момент, после нажатия кнопки сканировать ключ, программа будет ждать ключа и больше ни на что не реагировать. Поднесли ключ, можно дальше работать.
Хотелось бы, что бы при запуске, можно было выбрать ком порт. Выбранный порт записался бы в SerislPort1 NamePort. При нажатии кнопки Сканировать ключ, если ком порт не верный выводилось предупреждение, типа выберите правильный ком порт.
Если верный, то появляется надпись поднесите ключ к сканеру.
Проект могу скинуть в личку, писал в MS Visual Studio 2015. Сдача диплома с 15 июня, можно конечно и так, но хочется продумать мелочи. Выложить готовый проект для всеобщего пользования буду готов после доделки и после сдачи)) Дабы антиплагиат мне все не испортил
Загрузка компортов при запуске формы(cbPorts - это combobox)
private void Form1_FormLoad(object sender, EventArgs e)
{
string[] ports = SerialPort.GetPortNames();
cbPorts.Items.Clear();
cbPorts.Items.AddRange(ports);
}
Кнопка Сканировать ключ
//Кнопка сканирования RFID ключа
private void btnScan_Click(object sender, EventArgs e)
{
scaner();
}
//Сканирование UID ключа
private void scaner()
{
serialPort1.Open();
string uidkey = serialPort1.ReadLine();
serialPort1.Close();
textBox1.Text = uidkey;
}
Как сделать, что бы сканирование ключа происходило исходя из выбранного выше компорта в комбобоксе?