private void btnSave_Click(object sender, RoutedEventArgs e) { if (txtPost.Text.Trim() == "") { MessageBox.Show("Please enter Post name."); return; } List<EnumFunctions> selectedFunctions = new List<EnumFunctions>(); foreach (var pair in checkBoxes) { List<CheckBox> chkBoxes = pair.Value; for (int i = 1; i < pair.Value.Count; i++) if (chkBoxes[i].IsChecked == true) selectedFunctions.Add(((Tuple<EnumFunctions, string>)chkBoxes[i].Tag).Item1); } RoleHelper client = new RoleHelper(); try { if (lstRole.SelectedIndex == -1) client.AddRoleTemplate(user, event_, txtPost.Text.Trim(), txtDescription.Text.Trim(), selectedFunctions.ToArray()); else client.EditRightsTemplate(user, ((RoleTemplate)lstRole.SelectedItem).RoleTemplateID, txtPost.Text.Trim(), txtDescription.Text.Trim(), selectedFunctions.ToArray()); MessageBox.Show("Operation succeeded!"); } catch (Exception ex) { MessageBox.Show(ex.Message); } client.Close(); loadRoles(); }