private void ClientUpdateGameListReceived(object sender, UpdateGameListReceivedEventArgs e) { //посмотрим, есть ли в списке var findedGame = GamesInfo.FirstOrDefault(x => x.SessionId == e.gameInfo.SessionId); if (findedGame != null) { if (e.gameInfo.Players.Count != 1 || !e.gameInfo.IsActive) { GamesInfo.Remove(findedGame); } } else { if (e.gameInfo.Players.Count > 0) { GamesInfo.Add(e.gameInfo); } } var findedGameForDelete = GamesInfo.FirstOrDefault(x => x.SessionId == "1"); GamesInfo.Remove(findedGameForDelete); if (GamesInfo.Count == 0) { GamesInfo.Add(new GameInformation() { SessionId = "1", Parameters = "нет игр" }); } }
public async void Refresh() { var list = await Client.GetGamesAsync(); GamesInfo.Clear(); if (list == null) { GamesInfo.Add(new GameInformation() { SessionId = "1", Parameters = "сервер не доступен" }); } else { foreach (var gameInformation in list) { GamesInfo.Add(gameInformation); } if (GamesInfo.Count == 0) { GamesInfo.Add(new GameInformation() { SessionId = "1", Parameters = "нет игр" }); } } }