none
Evitar carga de sqlDataSource no LOAD RRS feed

Todas as Respostas

  • Carregue o grid usando sua propriedade DataSource;-)

    Gridview1.DataSource = MeuObjeto.GetConsulta();

    Gridview1.DataBind();

    sexta-feira, 19 de janeiro de 2007 17:33
  • Certo Rubens,

    Desculpe a ignorância mas...

    1 - E estas instruções eu coloco no LOAD do form ?

    2 - Quem é "MeuObjeto" neste caso ?

    Valeu !

    sexta-feira, 19 de janeiro de 2007 17:59
  • fala mike, blz?!

    então, quanto as instruções, vc vai coloca-las no momento que você deseja carregar os dados do banco. num botão por exemplo.

     

    ex: Botão Pesquisar, ao se clicar nele ele executa o código que carrega dos dados na datasource da grid ou outro componente qualquer...

     

    abraço

    sexta-feira, 19 de janeiro de 2007 18:06
  • Oi Vitor,

    Obrigado.

    Acontece que meu grid está associado a um sqlDataSource e quando o form é carregado o grid já vem com os dados e eu queria evitar isto ...

    sexta-feira, 19 de janeiro de 2007 18:09
  • Uma boa prática de programação seria vc criar um classe a qual retorna um repositório(datatable, datareader,dataset etc) e esse repositório vc associa ao grid no momento q desejar.

    Public Sub VinculaGri()
    Dim dt as DataTable = SuaClasse.GetConsulta()
    GridView1.DataSource = dt
    GridView1.Databind()
    End Sub

    Ai é só vc chamar o método qdo quiser carregar o grid, no evento click do botão por exemplo...

    Private Sub Button1_Click(sender as object, e as eventargs) handles button1.click

    VinculaGrid()

    End sub

    sexta-feira, 19 de janeiro de 2007 18:41
  • Olá Rubens,

    Segundo sua sugestão eu não deveria relacionar o grid a um sqlDataSource diretamente então e carregá-lo "no braço" sempre que quiser o que me dá controle total sobre o próprio correto ?

    sexta-feira, 19 de janeiro de 2007 19:12
  • Exatamente isso, desconheço outra forma;-(
    sexta-feira, 19 de janeiro de 2007 19:29
  • Ola Mike,

    Você pode customizar isso no evento Selecting do seu SqlDataSource.

    Lá você pode condicionar fazendo algo como:

    this.SqlDataSource1.Cancel = !this.IsPostBack;
    sexta-feira, 19 de janeiro de 2007 21:01
    Moderador
  • Muitíssimo obrigado a vocês,

    Acho que muito embora um controle menos automático das cargas dos grids seja desejável em muitos casos ( como sugerido pelo Rubens ) é importante poder controlar o refresh em outras tantas situações ( a partir da solução passada pelo Israel ).

    Valeu mesmo !

    sexta-feira, 19 de janeiro de 2007 21:42