none
Como recarregar um FormView RRS feed

  • Pergunta

  • Ola pessoal...

    Tenho um FormView vinculdao a um DataSource (os dois estão funcionando perfeitamente). Editei meu FormView e ao em vez de Label's tenho TextBox e alguns DropDownList.

    Quero saber como recarregar meu DataSource ou o FormView preenchedo um dos campos alterados do meu FormView. Ou seja vou fazer uma nova consulta usando um componente dentro do meu FormView!

    "OBS Eu estou usando VB e não C#!"

    Alguém sabe como fazê-lo?
    segunda-feira, 30 de março de 2009 17:46

Respostas

  • Fala Deives,
        Possivelmente são dropdown aninhadas certo?

        Mesmo se não for, você tem que usar os eventos dos Componentes.

        Por exemplo, se for um TextBox Você vai usar o TextBox_TextChanged, para DropDown o evento é SelectedIndexChanged e dentro do evento( code behind ) você vai recuperar os dados necessários para consulta ( através de um select na base ), e com o resultado da consulta alterar os dados do FormView manualmente. Não esqueça de setar a propriedade "AutoPostBack" do componente pra True, para forçar o PostBack da Pagina.

    Lembre que para alterar qualquer dados do FormView você precisa instaciar o objeto isso é

    Dim nome as TextBox = DirectCast(FormView1.FindControl("Nomedocampo"),TextBox)

    nome.Text =  "Novo Valor"

    Qualquer duvida é só falar!

    Abraços!


    André Mello
    segunda-feira, 30 de março de 2009 21:11
  • Fala Deives,
         Tudo que você pode fazer pelo Design da pagina voce pode fazer pelo code BiHind. A melhor maneira de descobrir essas coisas é fuxicando o Intellisense ( listagem dos metodos e paramentros do objetos )

      Dim ds As New SqlDataSource

      Depois de ter o objeto instanciado digite "ds." e veja as opções. Cada uma tem uma breve explicação.

      Para criar paramentros Dinamicos.

      ds.SelectParameters.Clear()
      ds.SelectParameters.Add(New Parameter("varias opções"))


    Um Abraço,

    Att,
        
    André Mello
    quarta-feira, 1 de abril de 2009 16:53

Todas as Respostas

  • Fala Deives,
        Eu não consegui entender bem o que você quer fazer.
        Mas se você querer recarrergar os dados depois de editar um item faça o seguinte;

        No evento ItemUpdated do FormView faça databind no FormView1.DataBind() onde formView1 é o nome do FormView.

        Isso vai forçar o DataSource a recarregar os dados.


    Um Abraço,

    André Mello
    • Editado André Mello1 segunda-feira, 30 de março de 2009 19:20 Correção
    segunda-feira, 30 de março de 2009 19:19
  • Oi Andre...

    Seguinte tenho um FormView sendo populado por um DataSource, só que além de inserir os dados por esse formView também quero fazer consultas, tipo... Ele vem preenchido mas se eu altera um campo ele deve ser recarregado usando esse campo com referencia.

    Deu pra entender?
    segunda-feira, 30 de março de 2009 20:05
  • Fala Deives,
        Possivelmente são dropdown aninhadas certo?

        Mesmo se não for, você tem que usar os eventos dos Componentes.

        Por exemplo, se for um TextBox Você vai usar o TextBox_TextChanged, para DropDown o evento é SelectedIndexChanged e dentro do evento( code behind ) você vai recuperar os dados necessários para consulta ( através de um select na base ), e com o resultado da consulta alterar os dados do FormView manualmente. Não esqueça de setar a propriedade "AutoPostBack" do componente pra True, para forçar o PostBack da Pagina.

    Lembre que para alterar qualquer dados do FormView você precisa instaciar o objeto isso é

    Dim nome as TextBox = DirectCast(FormView1.FindControl("Nomedocampo"),TextBox)

    nome.Text =  "Novo Valor"

    Qualquer duvida é só falar!

    Abraços!


    André Mello
    segunda-feira, 30 de março de 2009 21:11
  • Fala Andre...

    Sua dica foi DEZ... agora vê se tem como me ajudar em outra questão.

    Tenho um DataSource sem parametros, mas em um certo momento quero definir uma parametro pra ele via código... É possível? Lembrando que trabalho com VB e não com C#.

    Valeu!
    terça-feira, 31 de março de 2009 18:07
  • Fala Deives,
         Tudo que você pode fazer pelo Design da pagina voce pode fazer pelo code BiHind. A melhor maneira de descobrir essas coisas é fuxicando o Intellisense ( listagem dos metodos e paramentros do objetos )

      Dim ds As New SqlDataSource

      Depois de ter o objeto instanciado digite "ds." e veja as opções. Cada uma tem uma breve explicação.

      Para criar paramentros Dinamicos.

      ds.SelectParameters.Clear()
      ds.SelectParameters.Add(New Parameter("varias opções"))


    Um Abraço,

    Att,
        
    André Mello
    quarta-feira, 1 de abril de 2009 16:53
  • Andre...

    Bem onde abro ou tenho acesso ao "Intellisense", sou cru no VB2008 cara.

    Depois vou retomar as tentativas dos parametros em DataSource

    Valeu mais um vez!
    quarta-feira, 1 de abril de 2009 18:40
  • Deives,
       O Intellisense é o nome dado ao "AutoCompletar" do VisualStudio.

       Pro exemplo, quando voce cria
       Dim txt as new TextBox

       E digita

       txt. E todos os metodos e atributos são listados.

       Isso é default do VS.

    Abraços
    André Mello
    quarta-feira, 1 de abril de 2009 19:16
  • Hum... AutoCompletar... Esse eu conheço rs
    quinta-feira, 2 de abril de 2009 17:01