private void ModifyRowSpeed(int rowID, string ip, string loc, string speed)
 {
     if (dgvMain.InvokeRequired)
     {
         var del = new modifyRowSpeed(ModifyRowSpeed);
         Invoke(del, new object[] { rowID, ip, loc, speed });
     }
     else
     {
         dgvMain.Rows[rowID].Cells[1].Value = string.IsNullOrEmpty(ip) ? I18N.GetString("PingFail") : ip;
         if (!string.IsNullOrEmpty(loc))
         {
             dgvMain.Rows[rowID].Cells[3].Value = loc;
         }
         if (!string.IsNullOrEmpty(speed))
         {
             dgvMain.Rows[rowID].Cells[8].Value = speed;
         }
     }
 }
 private void ModifyRowSpeed(int rowID, string ip, string loc, string speed)
 {
     if (dgvMain.InvokeRequired)
     {
         var del = new modifyRowSpeed(ModifyRowSpeed);
         Invoke(del, new object[] { rowID, ip, loc, speed });
     }
     else
     {
         dgvMain.Rows[rowID].Cells[1].Value = string.IsNullOrEmpty(ip) ? I18N.GetString("PingFail") : ip;
         if (!string.IsNullOrEmpty(loc)) dgvMain.Rows[rowID].Cells[3].Value = loc;
         if (!string.IsNullOrEmpty(speed)) dgvMain.Rows[rowID].Cells[8].Value = speed;
     }
 }