private void addUserToGroupButton_Click(object sender, RoutedEventArgs e) { List <string> usernamesToAdd = new List <string>(); foreach (UserChecker uc in usersStackPanel.Children) { if ((bool)uc.checkBox.IsChecked) { usernamesToAdd.Add(uc.nameLabel.Content.ToString()); } } foreach (Group g in ((MainUserWindow)this.Owner).clientProxy.ReadGroups()) { if (g.Owner == ((MainUserWindow)this.Owner).loggedUser.Username && g.GroupName == ((Info)((MainUserWindow)this.Owner).ContentArea.Content).nameLabel.Content.ToString()) { foreach (string usersInGroup in ((MainUserWindow)this.Owner).clientProxy.ReadFromGroup(g.GroupName)) { ((MainUserWindow)this.Owner).clientProxy.DeleteUsersFromGroup(g.GroupName, g.Owner, usersInGroup); } foreach (string s in usernamesToAdd) { ((MainUserWindow)this.Owner).clientProxy.AddUsersToGroup(g.GroupName, g.Owner, s); Audit.AddedUserToGroup(g.Owner, s, g.GroupName); } ((Info)((MainUserWindow)this.Owner).ContentArea.Content).listBox.ItemsSource = usernamesToAdd; this.Close(); } } }