[英]get particular serialport information by changing the port value using C#
我在表單加載事件中編寫了以下代碼。 加載表單時,可用的串行端口將添加到組合框中。
String[] ports = SerialPort.GetPortNames();
private void Form1_Load(object sender, EventArgs e)
{
_serialPort = new SerialPort();
foreach (string port in ports)
{
cbox.Items.Add(port);
}
}
下一步,在組合框selectedindex_changed事件中,更改端口時,將在多行文本框中更新端口詳細信息。
private void cbox_SelectedIndexChanged(object sender, EventArgs e)
{
using (var searcher = new ManagementObjectSearcher("SELECT * FROM WIN32_SerialPort"))
{
var prts = searcher.Get().Cast<ManagementBaseObject>().ToList();
var tList = (from n in ports
join p in prts on n equals p["DeviceID"].ToString()
select n + " - " + p["Caption"]).ToList();
foreach (string s in tList)
{
mtxt.AppendText(s); // multiline textbox
}
}
}
例如:在此程序中,端口從(COM3到comX)添加到組合框中。 但是我的問題是我選擇的端口是什么,它僅從組合框中返回第一個端口的詳細信息(即,它僅返回COM3的詳細信息)。請任何人幫助我獲取我在組合框中選擇的端口的詳細信息。
在這里關注討論
閱讀以下內容
我們無法通過SerialPort類型獲取信息。 我不知道為什么您需要在應用程序中使用此信息。 但是,有一個與您相同的問題已解決的線程。 您可以在此處查看代碼,看看它是否可以為您提供幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.