Qual a melhor maneira de usar ErroProvider?
Galera é o seguinte tenho alguns campos para validar, queria saber como disparar o ErroProvider apenas para campos Incorretos ou Nulos, tipo criar apenas um ErroProvider para validar todos o meus TextBox, e qual seria a melhor maneira de dispa-ralo? pelo evento Validated x Validating?
Raniel Gomes
Curtidas 0
Respostas
Leandro Chiodini
03/01/2014
Aplicação web ou Desktope?
att
att
GOSTEI 0
Leandro Chiodini
03/01/2014
Eu curto,
colocar os textbox, dentro de um painel.
para dai fazer a busca dos text box .
ser mais reduzida.
o codigo ficaria assim.
colocar os textbox, dentro de um painel.
para dai fazer a busca dos text box .
ser mais reduzida.
o codigo ficaria assim.
protected bool ValidateNull()
{
foreach (Textbox item in Panel1.Controls.OfType 'menor que' Textbox 'maior que'().Reverse())
{
if(string.IsNullOrEmpty(item.Text.Trim()))
{
erroProvider.SetError(item, "Campo Obrigatório!");
item.Focus();
return false;
}
}
return true;
}
GOSTEI 0
Leandro Chiodini
03/01/2014
Você fazer asim tambem,
No final pintar os campos que ficaram sem preenchimento.
dai vai da tua aplicação.
No final pintar os campos que ficaram sem preenchimento.
dai vai da tua aplicação.
foreach (Control controle in this.Controls)
{
if (controle.GetType() == typeof(TextBox))
{
if (((TextBox)controle).TextLength == 0)
{
((TextBox)controle).Focus();
((TextBox)controle).BackColor = Color.Azure;
}
}
}
GOSTEI 0
Leandro Chiodini
03/01/2014
Completo ficaria assim.
Com o erroProvider
Com o erroProvider
private void btSalvar_Click(object sender, EventArgs e)
{
foreach (Control controle in this.Controls["pnTexto"].Controls)
{
if (controle.GetType() == typeof(TextBox))
{
if (((TextBox)controle).TextLength == 0)
{
((TextBox)controle).Focus();
((TextBox)controle).BackColor = Color.Azure;
errorProvider1.SetError((TextBox)controle, "Campo Preenchimento Obrigatório");
}
}
}
}
GOSTEI 0