/// <summary> /// Xóa bạn bè khỏi nhóm chỉ định /// </summary> /// <param name="Friend"></param> /// <param name="Group"></param> public void RemoveFriend(Users Friend, FriendGroup Group) { if (Friend == null || Group == null) { return; } GroupViewModel ParentGroup = groups.FirstOrDefault(g => g.Group.Equals(Group)); //Tìm đối tượng GroupViewModel chứa thông tin nhóm được chỉ định FriendViewModel MatchFriend = ParentGroup.Children.FirstOrDefault(f => f.Friend.Equals(Friend)); //Tìm đối tượng FriendViewModel chứa thông tin bạn bè được chỉ định if (ParentGroup != null && MatchFriend != null) //Sau khi tìm thấy thực hiện xóa nhóm { ParentGroup.Children.Remove(MatchFriend); } }
/// <summary> /// Di chuyển bạn bè từ nhóm cũ sang nhóm mới /// </summary> /// <param name="Friend">Đối tượng chứa thông tin bạn bè</param> /// <param name="OldGroup">Đối tượng chứa thông tin nhóm cũ</param> /// <param name="NewGroup">Đối tượng chứa thông tin nhóm mới</param> public void MoveFriend(Users Friend, FriendGroup OldGroup, FriendGroup NewGroup) { if (Friend == null || OldGroup == null || NewGroup == null) { return; } GroupViewModel NewParentGroup = groups.FirstOrDefault(g => g.Group.Equals(NewGroup)); //Tìm đối tượng GroupViewModel chứa thông tin nhóm mới được chỉ định GroupViewModel ParentGroup = groups.FirstOrDefault(g => g.Group.Equals(OldGroup)); //Tìm đối tượng GroupViewModel chứa thông tin nhóm cũ được chỉ định FriendViewModel MatchFriend = ParentGroup.Children.FirstOrDefault(f => f.Friend.Equals(Friend)); //Tìm đối tượng FriendViewModel chứa thông tin bạn bè được chỉ định FriendViewModel MatchFriendStateFull = new FriendViewModel(Friend, NewParentGroup); //Khởi tạo đối tượng FriendViewModel để chứa thông tin bạn bè và nhóm mới MatchFriendStateFull.ToogleCheckbox = MatchFriend.ToogleCheckbox; //Gán lại trạng thái đánh dấu chọn trước đó ParentGroup.Children.Remove(MatchFriend); //Xóa bạn bè trong nhóm cũ NewParentGroup.Children.Add(MatchFriendStateFull); //Bổ sung bạn bè vào nhóm mới }
/// <summary> /// Khởi tạo bạn bè dùng cho Binding /// </summary> /// <param name="Friend">Đối tượng chứa thông tin bạn bè</param> /// <param name="Parent">Đối tượng chứa thông tin nhóm mà bạn bè thuộc vào</param> public FriendViewModel(Users Friend, GroupViewModel Parent) { friend = Friend; parent = Parent; }