private void Server_GameResultReceived(object sender, System.EventArgs e) { if (e is SocketData args) { Dispatcher.Invoke(delegate { switch (args.Type) { case DataType.Result: lock (_lockObj) { _isMeasuring = false; } foreach (var item in args.Result.UserScores) { this.logManager.Items.Add($"User: {item.User.Name}/{item.User.School}, Score: {item.Score}"); this.logManager.Items.Add("--------------------------------------------------------"); } var data = ConvertJsonToByteArray(_jsonFilePathArray[3]); bool isSent = _server.Send(data); if (isSent) { Dispatcher.Invoke(delegate { this.logManager.Items.Add("Send rank."); }); } break; case DataType.Rank: break; } }); } }