private void typeCmb_SelectedIndexChanged(object sender, EventArgs e) { //Remove the old controls while (typeSettingsPnl.Controls.Count > 0) { typeSettingsPnl.Controls.RemoveAt(0); } //Then add in the new configurer ErasureType type = (ErasureType)typeCmb.SelectedItem; if (type.Configurer == null) { type.Configurer = type.Target.Configurer; } if (type.Configurer == null || !(type.Configurer is Control)) { Label label = new Label(); label.Text = S._("(This erasure type does not have any settings to define.)"); label.Dock = DockStyle.Fill; typeSettingsPnl.Controls.Add(label); return; } Control control = type.Configurer as Control; typeSettingsPnl.Controls.Add(control); control.Dock = DockStyle.Fill; }
private void ok_Click(object sender, EventArgs e) { ErasureType type = (ErasureType)typeCmb.SelectedItem; if (methodCmb.SelectedItem != ErasureMethodRegistrar.Default && !type.Target.SupportsMethod((IErasureMethod)methodCmb.SelectedItem)) { errorProvider.SetError(methodCmb, S._("The erasure method selected does " + "not support erasing the erasure target.")); } else if (type.Configurer == null || type.Configurer.SaveTo(type.Target)) { errorProvider.Clear(); DialogResult = DialogResult.OK; Close(); } }