none
Dados de um DataGrid para Outro Data Grid RRS feed

  • Pergunta

  • Boa tarde pessoal, estou com um probleminha,

    na minha aplicação eu terei 2 datagrids, o 1º será alimentado por um select no banco de dados,

    porém eu preciso que o 2º seja alimentado com os dados do 1º no evento doubleclick de cada linha...

     

    Desde já agradeço!!!!

    segunda-feira, 12 de julho de 2010 20:24

Respostas

  • Caio,

    Vamos por partes. Até que ponto você conseguiu fazer?

    Se não conseguiu fazer nada, segue alguns links que podem te ajudar a sair do lugar:

    1) DataBinding de DataGridView:

    http://www.switchonthecode.com/tutorials/csharp-tutorial-binding-a-datagridview-to-a-database

    2) Pegando os valores selecionados da DataGridView:

    http://social.msdn.microsoft.com/forums/en-US/winformsdatacontrols/thread/7ce81f9a-7047-444d-b75b-ef548b2ec635/

    3) Populando manualmente uma DataGridView:

    http://bytes.com/topic/c-sharp/answers/255123-using-datagrid-without-dataset-unbound


    André Alves de Lima
    Visite o meu site: http://andrealveslima.spaces.live.com
    Me siga no Twitter: @andrealveslima
    segunda-feira, 12 de julho de 2010 21:40
    Moderador
  •   entao é assim:

    2 grids,  dataGridViewOrigem e dataGridViewDestino.

    carregar a dataGridViewOrigem:

    private voidcarregaGrid()
            {
                conn.ConnectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=BDWSERVIDOR.mdb";

                conn.Open();

                string str = "select * from utilizadores, filas where utilizadores.ID_util=Filas.ID_util";

                command = new OleDbCommand(str, conn);

                da = new OleDbDataAdapter(command);

                ds = new DataSet();
                da.Fill(ds, "utilizadores");          

                dataGridViewOrigem.DataSource = ds.Tables[0];
            }

     

    segunda fase, evento doubleClick:

    private void dataGridViewOrigem_DoubleClick(object sender, EventArgs e)
            {
                DataTable dt ;
                DataSet ds2 = new DataSet();
                dt = ds.Tables[0].Clone();

                DataGridViewRow row = dataGridViewOrigem.CurrentRow;
                int index = row.Index;
             
                DataRow rows = ds.Tables[0].Rows[index];
                dt.ImportRow(rows);
                ds2.Tables.Add(dt);

                dataGridViewDestino.DataSource = ds2.Tables[0];
            }

     

    o dataset ds é global. criei este exemplo e funciona.



    espero ter ajudado.
    quarta-feira, 14 de julho de 2010 07:58

Todas as Respostas

  • Caio,

    Vamos por partes. Até que ponto você conseguiu fazer?

    Se não conseguiu fazer nada, segue alguns links que podem te ajudar a sair do lugar:

    1) DataBinding de DataGridView:

    http://www.switchonthecode.com/tutorials/csharp-tutorial-binding-a-datagridview-to-a-database

    2) Pegando os valores selecionados da DataGridView:

    http://social.msdn.microsoft.com/forums/en-US/winformsdatacontrols/thread/7ce81f9a-7047-444d-b75b-ef548b2ec635/

    3) Populando manualmente uma DataGridView:

    http://bytes.com/topic/c-sharp/answers/255123-using-datagrid-without-dataset-unbound


    André Alves de Lima
    Visite o meu site: http://andrealveslima.spaces.live.com
    Me siga no Twitter: @andrealveslima
    segunda-feira, 12 de julho de 2010 21:40
    Moderador
  •   entao é assim:

    2 grids,  dataGridViewOrigem e dataGridViewDestino.

    carregar a dataGridViewOrigem:

    private voidcarregaGrid()
            {
                conn.ConnectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=BDWSERVIDOR.mdb";

                conn.Open();

                string str = "select * from utilizadores, filas where utilizadores.ID_util=Filas.ID_util";

                command = new OleDbCommand(str, conn);

                da = new OleDbDataAdapter(command);

                ds = new DataSet();
                da.Fill(ds, "utilizadores");          

                dataGridViewOrigem.DataSource = ds.Tables[0];
            }

     

    segunda fase, evento doubleClick:

    private void dataGridViewOrigem_DoubleClick(object sender, EventArgs e)
            {
                DataTable dt ;
                DataSet ds2 = new DataSet();
                dt = ds.Tables[0].Clone();

                DataGridViewRow row = dataGridViewOrigem.CurrentRow;
                int index = row.Index;
             
                DataRow rows = ds.Tables[0].Rows[index];
                dt.ImportRow(rows);
                ds2.Tables.Add(dt);

                dataGridViewDestino.DataSource = ds2.Tables[0];
            }

     

    o dataset ds é global. criei este exemplo e funciona.



    espero ter ajudado.
    quarta-feira, 14 de julho de 2010 07:58