private void ButtonChangeRoles_Click(object sender, EventArgs e) { Program.AssertOnEventThread(); if (Helpers.FeatureForbidden(_connection, Host.RestrictRBAC)) { // Show upsell dialog using (var dlg = new UpsellDialog(HiddenFeatures.LinkLabelHidden ? Messages.UPSELL_BLURB_RBAC : Messages.UPSELL_BLURB_RBAC + Messages.UPSELL_BLURB_TRIAL, InvisibleMessages.UPSELL_LEARNMOREURL_TRIAL)) dlg.ShowDialog(this); return; } // Double check, this method is called from a context menu as well and the state could have changed under it if (!ButtonChangeRoles.Enabled) { return; } List <Subject> selectedSubjects = new List <Subject>(); foreach (DataGridViewRow r in GridViewSubjectList.SelectedRows) { AdSubjectRow selectedRow = (AdSubjectRow)r; // Should not be here, you can't change the root man! if (selectedRow.IsLocalRootRow) { continue; } selectedSubjects.Add(selectedRow.subject); } using (var dialog = new RoleSelectionDialog(_connection, selectedSubjects.ToArray())) dialog.ShowDialog(this); }