Percorrer um FormView

21/01/2008

0

Aguem sabe como percorrer um formView.
to tentando algo assim...
protected void Page_Load(object sender, EventArgs e) {
        foreach(TemplateField item in FormView1.ItemTemplate) {
            for(int i = 0; i > item.Controls.Count; i++) {
                if(item.Controls[0].Controls[i] is TextBox) {
                   (FormView1.Controls[0].Controls[i] as TextBox).Attributes.Add("onFocus", "this.className=´CaixaTextoDestaque´;");
                    (FormView1.Controls[0].Controls[i] as TextBox).Attributes.Add("onBlur", "this.className=´CaixaTextoNormal´;");
                }
            }
        }
    }

soh preciso montar o foreach depois eu vou debugando pra montar.


Ricardo Silva

Ricardo Silva

Responder

Posts

21/01/2008

Ricardo Silva

Galera pra explicar Melhor eu tenho uma função em winAplication que percorre todos os componentes de um determinado formulario se ele for um TextBox então ele limpa a propriedade Text
EX win:
public static void limpaCampos(Form formCorrente) {
            for(int i = 0; i < formCorrente.Controls[1].Controls.Count; i++) {
                if(formCorrente.Controls[1].Controls[i] is TextBox)  {
                    (formCorrente.Controls[1].Controls[i] as TextBox).Clear();
                }
                if(formCorrente.Controls[1].Controls[i] is MaskedTextBox) {
                    (formCorrente.Controls[1].Controls[i] as MaskedTextBox).Clear();
                }
            }             
        }


eu quero fazer o mesmo soh que em um FormView do ASP, se for um TextBox entaum eu adiciono um atributo...

Espero ter cido mais claro


Responder

21/01/2008

Ricardo Silva

Galera teoricamente parece facil, mas como eu naum conheço a fundo o componente do FormView eu fiz um pequeno Poguizinho atravez de varios debugs
segue ai...
protected void FormView1_ItemCreated(object sender, EventArgs e) {
        //Verifica se esta no tempolade de Inserção
        if(FormView1.CurrentMode == FormViewMode.Insert) {
            //percorre todo os componentes do template Insert
            for(int i = 0;i < this.FormView1.Controls[0].Controls[1].Controls[0].Controls.Count; i++) {
                //verifica se o componente é um TextBox
                if((this.FormView1.Controls[0].Controls[1].Controls[0].Controls[i] is TextBox)) {
                    // SE for um TextBox seta a propriedade Text
                    (this.FormView1.Controls[0].Controls[1].Controls[0].Controls[i] as TextBox).Text = "teste";
                }
            }
        }
    }

creio que essa naum é a melhor forma de percorrer um componente no formView, mas eu passei a tarde inteira pesquisando nos foruns e naum axei nada parecido, mas aki ta funcionando... logicamnete que eu estou setando um atributo via JScript, se alguem puder melhorar isso ai ficarei grato...

RicaJedidia


Responder

Que tal ter acesso a um e-book gratuito que vai te ajudar muito nesse momento decisivo?

Ver ebook

Recomendado pra quem ainda não iniciou o estudos.

Eu quero
Ver ebook

Recomendado para quem está passando por dificuldades nessa etapa inicial

Eu quero

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar