我已经使用消息接收创建了tcpserver监听器。消息格式例如是:“acc123 | 472348923748989234”。
我想分开“|”在我的datagridview列中。第一条消息显示正常,但是在分割后第二条消息返回错误:System.IndexOutOfRangeException: Index was outside the bounds of the array
到目前为止,这是我的代码:
void Timer1_Tick(object sender, EventArgs e)
{
string _acc = textFromClient3 ;
string[] txt = _acc.Split(new[] {'|'}, StringSplitOptions.None);
for (int row = 0; row < dataGridView1.Rows.Count; row++)
{
if (dataGridView1.Rows[row].Cells[0].Value != null &&
dataGridView1.Rows[row].Cells[0].Value.Equals(textFromClient))
{
return;
}
}
DataGridViewRow addRow = new DataGridViewRow();
addRow.CreateCells(dataGridView1);
addRow.Cells[0].Value = textFromClient;
addRow.Cells[1].Value = txt[0];
addRow.Cells[2].Value = txt[1];
dataGridView1.Rows.Add(addRow);
}
如果textFromClient3
是消息,则文本[0]为“acc123”,文本[1]应为“472348923748989234”。
答案 0 :(得分:0)
我找到了解决方案。
if (txt.Length > 1 && txt[1] != null)
{
addRow.Cells[2].Value = txt[1];
}
谢谢大家的帮助。