0
I have several forms that I’m 'instantiating' by the event click on the toolstrip, but it seems that it is getting polluted since all codes do the same routine changing only the parameters.
Event to open and check if is no longer open the Registration screen - Customers:
private void cadastrarToolStripMenuItem1_Click(object sender, EventArgs e)
{
//Formulário de Cadstro de Clientes
//Verifica se já existe o mesmo formulário aberto para não sobrecarregar de processos iguais
bool aberto = false;
foreach (frmCadastroClientes f in this.MdiChildren.OfType<frmCadastroClientes>()) //OfType - Filtro que retorna só o que especifiquei
if (f.Name == "frmCadastroClientes")
{
f.Activate();
aberto = true;
break;
}
if (!aberto)
{
frmCadastroClientes CadastroClientes = new frmCadastroClientes();
CadastroClientes.StartPosition = FormStartPosition.CenterParent;
CadastroClientes.MdiParent = this;
CadastroClientes.Dock = DockStyle.Fill;
CadastroClientes.Show();
}
}
Event to open and check if is no longer open the Registration screen - Suppliers:
private void cadastrarToolStripMenuItem_Click(object sender, EventArgs e)
{
//Formulário de Cadastro de Fornecedores
//Verifica se já existe o mesmo formulário aberto para não sobrecarregar de processos iguais
bool aberto = false;
foreach (frmCadastroFornecedores f in this.MdiChildren.OfType<frmCadastroFornecedores>()) //OfType - Filtro que retorna só o que especifiquei
if (f.Name == "frmCadastroFornecedores")
{
f.Activate();
aberto = true;
break;
}
if (!aberto)
{
frmCadastroFornecedores CadastroFornecedores = new frmCadastroFornecedores();
CadastroFornecedores.StartPosition = FormStartPosition.CenterParent;
CadastroFornecedores.MdiParent = this;
CadastroFornecedores.Dock = DockStyle.Fill;
CadastroFornecedores.Show();
}
}
And so it goes. on other canvases as well.
How could, if possible simplify this repeated routine?
It is possible yes using Generics, but is all this necessary? Something tells me that there is a better solution.
– Maniero
@Maniero This way is attending me so far.. do not know if it is the best or worst solution, about the Generics that you send, I do not understand how I will adapt the code, there you used console etc
– WSS
Meet and be right not different thing.
– Maniero