cesar2007 0 Denunciar post Postado Outubro 9, 2007 boa Noite galera!!!Estou desenvolvendo um sistema em wind. applic. na linguagem C#, na minha tela de cadastro tenho varios texbox, minha duvidaeh a seguinte gostaria de fazer uma verificacao para ver se o textbox esta vazio ou nao, detalhe preciso de fazer isso sem ficar utilizando"IF" para todos os item da minha tela, sera que tem como eu fazer isso. SEI QUE NO ASP.NET TEM OS COMPONENTES DE VALIDACAO, QUERIASABER SE PARA WIND. APPLIC. TAMBEM TEM ALGO DO TIPO.muito obirgado!!!! Compartilhar este post Link para o post Compartilhar em outros sites
Angelo Compri 0 Denunciar post Postado Outubro 9, 2007 Ola Cesar. A rotina a seguir faz o que você quer e no final retorna uma String com a mensagem dos controles que são requeridos e estão vazios. /// <summary>/// Percorre os controles de uma tela verificando se o controle esta preenchido./// </summary>/// <param name="ctl">Controle Inicial[this]</param>/// <param name="sGroup">Nome do Grupo</param>/// <param name="Res">Estado inicial [true]</param>/// <param name="sMsg">Variavel para receber as mensagens</param>/// <returns>Verdadeiro ou Falso</returns>public static bool RequiredByGroup(Control ctl, string sGroup, bool Res, ref string sMsg){ foreach (Control ctlc in ctl.Controls) { if ((ctlc is TextBox) && ((TextBox)ctlc).ValidationGroup.Equals(sGroup) && ((TextBox)ctlc).Text.Trim().Equals("")) { sMsg += MsgFieldRequired(((TextBox)ctlc).ID.Replace("txt", "lbl")); return false; } else if ((ctlc is DropDownList) && ((DropDownList)ctlc).ValidationGroup.Equals(sGroup) && (((DropDownList)ctlc).SelectedItem == null || ((DropDownList)ctlc).SelectedItem.Text.Trim().Equals(""))) { sMsg += MsgFieldRequired(((DropDownList)ctlc).ID.Replace("ddl", "lbl")); return false; } else if (ctlc.Controls.Count > 0) if (!RequiredByGroup(ctlc, sGroup, Res, ref sMsg)) return false; } return Res;} A função MsgFieldRequired(((TextBox)ctlc).ID.Replace("txt", "lbl")); é uma função generica que me tráz informção do meu arquivo de recursos com a seguinte mensagem: "O campo {0} não pode ser vazio." e apenas substituo o {0} pelo text do label relacionado ao textbox ou DropDown. Para utilizar a função: string sMsg = ""; if (!General.RequiredByGroup(View2, "VG2", true, ref sMsg)) { MessageBox.Show(sMsg); return false; } Boa Sorte! http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Abraços, Angelo Compri Compartilhar este post Link para o post Compartilhar em outros sites