/// <summary> /// Code ajouté lors de la création d'un item /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void ListCharacters_ItemToCreate(object sender, EventArgs e) { VO_PlayableCharacter newChar = _Service.CreatePlayer(); ListPlayers.AddItem(newChar.Id, newChar.Title); LoadCharacter(newChar.Id); }
private async Task <List <Player> > GetPlayerList(string loginPart) { try { Dictionary <string, object> data = new Dictionary <string, object>() { { "player_name", loginPart } }; ListPlayers currentResponse = await PostData <ListPlayers>(FindPlayerCommand, data); if (currentResponse != null && currentResponse.Players != null && currentResponse.Players.Count > 0) { return(currentResponse.Players); } else { return(null); } } catch (System.Net.WebException) { return(null); } }
/// <summary> /// Synchronise le label d'un item avec la liste d'items et le titre dans le formulaire /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void txtName_TextChanged(object sender, EventArgs e) { if (ListPlayers.ChangeItemName(CurrentCharacter.Id, txtName.Text)) { CurrentCharacter.Title = txtName.Text; } else { txtName.Text = CurrentCharacter.Title; MessageBox.Show(Errors.ERROR_UNIQUE_TITLE, Errors.ERROR_BOX_TITLE); } }
/// <summary> /// Survient lorsque le formulaire devient visible /// </summary> public void InitializeDBPlayers() { CurrentCharacter = null; ProvisionList(); if (ListPlayers.DataSource.Count > 0) { Guid firstAnimation = ListPlayers.DataSource[0].Id; ListPlayers.SelectItem(firstAnimation); LoadCharacter(firstAnimation); } else { ListCharacters_ListIsEmpty(this, new EventArgs()); } }
public Lobby(Player host) { Host = host; ListPlayers.Add(host); }
/// <summary> /// Charge la liste de characters /// </summary> private void ProvisionList() { ListPlayers.DataSource = _Service.ProvisionList(); ListPlayers.LoadList(); }
// GET: Player/List?{PageNum} // If the page number is not included, set it to 0 public ActionResult List(int PageNum = 0) { ListPlayers ViewModel = new ListPlayers(); ViewModel.isadmin = User.IsInRole("Admin"); // Grab all players string url = "playerdata/getplayers"; // Send off an HTTP request // GET : /api/playerdata/getplayers // Retrieve response HttpResponseMessage response = client.GetAsync(url).Result; // If the response is a success, proceed if (response.IsSuccessStatusCode) { // Fetch the response content into IEnumerable<PlayerDto> IEnumerable <PlayerDto> SelectedPlayers = response.Content.ReadAsAsync <IEnumerable <PlayerDto> >().Result; // -- Start of Pagination Algorithm -- // Find the total number of players int PlayerCount = SelectedPlayers.Count(); // Number of players to display per page int PerPage = 8; // Determines the maximum number of pages (rounded up), assuming a page 0 start. int MaxPage = (int)Math.Ceiling((decimal)PlayerCount / PerPage) - 1; // Lower boundary for Max Page if (MaxPage < 0) { MaxPage = 0; } // Lower boundary for Page Number if (PageNum < 0) { PageNum = 0; } // Upper Bound for Page Number if (PageNum > MaxPage) { PageNum = MaxPage; } // The Record Index of our Page Start int StartIndex = PerPage * PageNum; //Helps us generate the HTML which shows "Page 1 of ..." on the list view ViewData["PageNum"] = PageNum; ViewData["PageSummary"] = " " + (PageNum + 1) + " of " + (MaxPage + 1) + " "; // -- End of Pagination Algorithm -- // Send back another request to get players, this time according to our paginated logic rules // GET api/playerdata/getplayerspage/{startindex}/{perpage} url = "playerdata/getplayerspage/" + StartIndex + "/" + PerPage; response = client.GetAsync(url).Result; // Retrieve the response of the HTTP Request IEnumerable <PlayerDto> SelectedPlayersPage = response.Content.ReadAsAsync <IEnumerable <PlayerDto> >().Result; ViewModel.players = SelectedPlayersPage; //Return the paginated of players instead of the entire list return(View(ViewModel)); } else { // If we reach here something went wrong with our list algorithm return(RedirectToAction("Error")); } }