Использование доступных com-портов из списка
То, что я пытаюсь сделать, это после того, как я поместил доступные com-порты в listbox1, а затем, когда пользователь выбирает com-порт из него, сделайте назначение из выбранного значения в listbox в PortName
.PortName = ListBox1.SelectedItem.Value
но это, похоже, не работает. Что я делаю не так? спасибо
Что я уже пробовал:
Public Class Com Private Sub ListBox1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ListBox1.SelectedIndexChanged With Form1.SerialPort1 .BaudRate = 9600 'for example, set the speed as you actually need it .Parity = System.IO.Ports.Parity.Space 'much more common would be .None .StopBits = 1 'or 2, though 2 should not normally be used (IMO) .PortName = ListBox1.SelectedItem.Value 'for example .Handshake = System.IO.Ports.Handshake.RequestToSend 'or .None .RtsEnable = True .Open() End With End Sub End Class
F. Xaver
используйте отладчик, чтобы следить за тем, что устанавливается..
что вы использовали для заполнения списка? (listbox1 - это всегда ужасное имя, кстати)
Системы.ИО.Портах.SerialPort. GetPortNames, чтобы получить фактические существующие устройства?
с первого взгляда он должен работать нормально.. но если после этого вы не заблокируете список или не закроете и не освободите компорт для нового выбора, вы наверняка получите ошибки.
(и, как говорят ваши комментарии... некоторые из этих настроек довольно необычны. Я никогда не видел такого устройства .Четность = пространство до сих пор