[英]How to insert 2 diffrent array strings in datagridview on the same row
我有一個帶有richtextbox的win表單,該表單在我給某些命令(如AT + DSCA和AT + RSSI)后從串行COM端口讀取,這兩個命令被一次又一次執行,接收到的字符串如下:at + dscan字符串就像: ZC * | 0001950000008F8B | 0000 | PTv1.11 | ZE20S | ProBee-ZE ,我有以下vb.net代碼來拆分此字符串並將其插入到datagridview中:前兩個值。
Private Sub SalveazaData()
Dim Rows As String() = rtbComData.Text.Split(Environment.NewLine.ToCharArray())
For Each Row As String In Rows
If Not (Row = "AT+DSCAN" Or Row = "OK" Or Row = "") Then
Dim sAry As String() = Split(Row, "|")
Dim aRow As smdDataDataSet1.smdTableRow = SmdDataDataSet1.smdTable.NewsmdTableRow()
aRow.Model = sAry(0)
aRow.AdresaUnica = sAry(1)
aRow.StatusModul = "ACTIVE"
Try
SmdDataDataSet1.SearchAdrese.Rows.Add(sAry(1))
SmdDataDataSet1.smdTable.Rows.Add(aRow)
Catch ex As Exception
Dim u As String
u = SmdTableTableAdapter.UpdateInactivActiv()
End Try
End If
Next
對於第二條命令,AT + RSSI的字符串類似於: 發件人:0000,父項:FFFF,RSSI:0,LQI:255無法將值255插入與前一個字符串相同的行! 我只想在與上述字符串相同的行上插入值“ 255”
我了解您的要求,要解析來自COM端口的值並使用這些值顯示在datagridview中。 //找出哪個索引具有較長的長字符串值
//“ ProBee-ZE發件人:0000,父級:FFFF,RSSI:0,LQI:255發件人:0000,”
//例如,我們有sAry(3)。
Dim tAry As String() = Split(sAry(3), ",")
//您將在tAry(3)中獲得LQI:255,並執行相同的過程以獲取255
Dim uAry As String() = Split(tAry(3), ":")
//您將獲得值為255的uAry(1)//您需要將此代碼放入for循環中。
For Each Row As String In Rows
If Not (Row = "AT+DSCAN" Or Row = "OK" Or Row = "") Then
Dim sAry As String() = Split(Row, "|")
Dim aRow As smdDataDataSet1.smdTableRow = SmdDataDataSet1.smdTable.NewsmdTableRow()
aRow.Model = sAry(0)
aRow.AdresaUnica = sAry(1)
aRow.StatusModul = "ACTIVE"
aRow.thecolumnwhichuwant = uAry(1)
Try
SmdDataDataSet1.SearchAdrese.Rows.Add(sAry(1))
SmdDataDataSet1.smdTable.Rows.Add(aRow)
Catch ex As Exception
Dim u As String
u = SmdTableTableAdapter.UpdateInactivActiv()
End Try
End If
Next
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.