/// <summary>
        /// Charge les users connectés.
        /// </summary>
        /// <returns>Dictionnaire avec les status.</returns>
        private async Task <List <ListViewUser> > LoadUsers(bool room, Guid?roomGuid = null)
        {
            List <ListViewUser> lstUsers = new List <ListViewUser>();

            using (var svcClient = new LobbyServiceClient())
            {
                if (!room)
                {
                    var users = await Task.Run(() => svcClient.GetLoggedUsers());

                    foreach (var kp in users)
                    {
                        if (kp.Value == 0)
                        {
                            lstUsers.Add(new ListViewUser(kp.Key, "Green"));
                        }
                        else if (kp.Value == 1)
                        {
                            lstUsers.Add(new ListViewUser(kp.Key, "Orange"));
                        }
                        else
                        {
                            lstUsers.Add(new ListViewUser(kp.Key, "Red"));
                        }
                    }
                }
                else
                {
                    if (roomGuid != null)
                    {
                        var users = await Task.Run(() => svcClient.GetRoomPlayers(roomGuid.Value));

                        foreach (string username in users)
                        {
                            lstUsers.Add(new ListViewUser(username, "Orange"));
                        }
                    }
                }
            }

            return(lstUsers);
        }
        /// <summary>
        ///
        /// </summary>
        /// <param name="room"></param>
        private void LoadSelectedRoom(Guid room)
        {
            tabCurrentRoom.DataContext = room;

            if (lstRooms.SelectedItem is RoomInfo || (tabCurrentRoom.DataContext != null && tabCurrentRoom.Visibility == System.Windows.Visibility.Visible))
            {
                using (var svcClient = new LobbyServiceClient())
                {
                    string masterName = svcClient.GetMasterName((Guid)tabCurrentRoom.DataContext);

                    if (masterName != UserSessionSingleton.Instance.Name)
                    {
                        btnStart.IsEnabled      = false;
                        btnStart.Visibility     = System.Windows.Visibility.Hidden;
                        btnRoomApply.Visibility = System.Windows.Visibility.Hidden;
                        btnRoomApply.IsEnabled  = false;
                        cmbRoomMaster.IsEnabled = false;
                        txtRoomName.IsEnabled   = false;
                    }

                    var lstPlayersMasters       = svcClient.GetRoomPlayers((Guid)tabCurrentRoom.DataContext);
                    List <ListViewUser> lstLvus = new List <ListViewUser>();

                    foreach (string p in lstPlayersMasters)
                    {
                        ListViewUser lvu = new ListViewUser(p, "Green");
                        lstLvus.Add(lvu);
                    }

                    cmbRoomMaster.ItemsSource = lstLvus;

                    if (!_cmbMasterChanged)
                    {
                        txtRoomName.Text = ((RoomInfo)lstRooms.SelectedItem).Name;
                    }

                    cmbTeamChosen.SelectedIndex = svcClient.GetCurrentTeamIndex(UserSessionSingleton.Instance.UserToken.Value);
                }
            }
        }
        /// <summary>
        /// 
        /// </summary>
        /// <param name="room"></param>
        private void LoadSelectedRoom(Guid room)
        {
            tabCurrentRoom.DataContext = room;

            if (lstRooms.SelectedItem is RoomInfo || (tabCurrentRoom.DataContext != null && tabCurrentRoom.Visibility == System.Windows.Visibility.Visible))
            {
                using (var svcClient = new LobbyServiceClient())
                {                   
                    string masterName = svcClient.GetMasterName((Guid)tabCurrentRoom.DataContext);

                    if (masterName != UserSessionSingleton.Instance.Name)
                    {
                        btnStart.IsEnabled = false;
                        btnStart.Visibility = System.Windows.Visibility.Hidden;
                        btnRoomApply.Visibility = System.Windows.Visibility.Hidden;
                        btnRoomApply.IsEnabled = false;
                        cmbRoomMaster.IsEnabled = false;
                        txtRoomName.IsEnabled = false;
                    }

                    var lstPlayersMasters = svcClient.GetRoomPlayers((Guid)tabCurrentRoom.DataContext);
                    List<ListViewUser> lstLvus = new List<ListViewUser>();

                    foreach (string p in lstPlayersMasters)
                    {
                        ListViewUser lvu = new ListViewUser(p, "Green");
                        lstLvus.Add(lvu);
                    }

                    cmbRoomMaster.ItemsSource = lstLvus;

                    if (!_cmbMasterChanged)
                    {
                        txtRoomName.Text = ((RoomInfo)lstRooms.SelectedItem).Name;
                    }

                    cmbTeamChosen.SelectedIndex = svcClient.GetCurrentTeamIndex(UserSessionSingleton.Instance.UserToken.Value);
                }
            }
        }
        /// <summary>
        /// Charge les users connectés.
        /// </summary>
        /// <returns>Dictionnaire avec les status.</returns>
        private async Task<List<ListViewUser>> LoadUsers(bool room, Guid? roomGuid = null)
        {
            List<ListViewUser> lstUsers = new List<ListViewUser>();

            using (var svcClient = new LobbyServiceClient())
            {
                if (!room)
                {
                    var users = await Task.Run(() => svcClient.GetLoggedUsers());

                    foreach (var kp in users)
                    {
                        if (kp.Value == 0)
                            lstUsers.Add(new ListViewUser(kp.Key, "Green"));
                        else if (kp.Value == 1)
                            lstUsers.Add(new ListViewUser(kp.Key, "Orange"));
                        else
                            lstUsers.Add(new ListViewUser(kp.Key, "Red"));
                    }
                }
                else
                {
                    if (roomGuid != null)
                    {
                        var users = await Task.Run(() => svcClient.GetRoomPlayers(roomGuid.Value));

                        foreach (string username in users)
                            lstUsers.Add(new ListViewUser(username, "Orange"));
                    }
                }
            }

            return lstUsers;
        }