elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Buscar Ingresar Registrarse
28 Mayo 2012, 04:28  


Tema destacado: Últimos eventos sobre seguridad/inseguridad

+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (Moderador: [D4N93R])
| | | |-+  Ayuda con DataGridView
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Ayuda con DataGridView  (Leído 747 veces)
bitaziko

Desconectado Desconectado

Mensajes: 18



Ver Perfil
Ayuda con DataGridView
« en: 23 Diciembre 2011, 10:46 »

Hola Hackeros.net
esta vez traigo un problemilla que creo es facil resolver pero me he dado cuenta que soy muy bruto y no termino de conseguirlo,
 vereis estoy creando una aplicacion para registrar clientes en una base de datos en sqlserver mediante visual studio 2010. todo marcha bien el unico inconveniente es el siguiente

atravez de un form hago los registro en la base de datos, y tengo un mdiparent que en el evento load me carga en un datagridview todos los registros de la BD bien, pues lo que intento conseguir es que una vez que yo presione el boton "guardar" en el formulario se me actualize el datagridview que esta en el mdiparent y me visualize el registro que acabo de guardar.

espero haberme xplicado bien y que me podais ayudar.

gracias de antemano!!!
un saludo!! foreros

y FELIZ NAVIDAD!!!!!! ;-) ;-) ;-)


En línea

La Suerte Favorece a los Niños,a los Locos y a las Naves llamadas Enterprise....
Shell Root


Desconectado Desconectado

Mensajes: 2.456


Alex Jurado


Ver Perfil WWW
Re: Ayuda con DataGridView
« Respuesta #1 en: 23 Diciembre 2011, 12:40 »

Con visualizar quieres decir que se refresque el DataGridView como tal, o que se posicione en el registro ingresado?


En línea

---
Novlucker
Ninja y
Ex-Staff
*
Desconectado Desconectado

Mensajes: 10.239


Yo que tu lo pienso dos veces


Ver Perfil
Re: Ayuda con DataGridView
« Respuesta #2 en: 23 Diciembre 2011, 12:43 »

Debes de actualizar el datasource y disparar el bind

Saludos
En línea

Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD
http://twitter.com/novlucker

"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein

bitaziko

Desconectado Desconectado

Mensajes: 18



Ver Perfil
Re: Ayuda con DataGridView
« Respuesta #3 en: 23 Diciembre 2011, 13:40 »

Con visualizar quieres decir que se refresque el DataGridView como tal, o que se posicione en el registro ingresado?

si que se refresque el DataGridView como tal y me muestre el registro que recientemente ingrese.
En línea

La Suerte Favorece a los Niños,a los Locos y a las Naves llamadas Enterprise....
bitaziko

Desconectado Desconectado

Mensajes: 18



Ver Perfil
Re: Ayuda con DataGridView
« Respuesta #4 en: 23 Diciembre 2011, 13:48 »

Debes de actualizar el datasource y disparar el bind

Saludos

ok si me pudieras explicar bien el codigo x que no tengo ni idea

he pensado en lo siguiente aunq aun no lo he probado:
como tengo el datagridview en un mdiparent he pensado en esto
Código
 Private Sub ClientesBindingNavigatorSaveItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ClientesBindingNavigatorSaveItem.Click
       Me.Validate()
       Me.ClientesBindingSource.EndEdit()
       Me.TableAdapterManager.UpdateAll(Me.BasedeDatosDataSet)
       MDIParent1.Refresh()
 
   End Sub


o bien asi:
Código
 Private Sub ClientesBindingNavigatorSaveItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ClientesBindingNavigatorSaveItem.Click
       Me.Validate()
       Me.ClientesBindingSource.EndEdit()
       Me.TableAdapterManager.UpdateAll(Me.BasedeDatosDataSet)
       MDIParent1.ClientesDataGridView.Refresh()
   End Sub

pero lo dicho no lo he probado aun, he leido lo del bind pero no se exactamente como dispararlo,con respecto al datasoucer al decir actualizar seria "refresh" o "update" por que no lo entiendo dl todo esas acciones...
En línea

La Suerte Favorece a los Niños,a los Locos y a las Naves llamadas Enterprise....
Novlucker
Ninja y
Ex-Staff
*
Desconectado Desconectado

Mensajes: 10.239


Yo que tu lo pienso dos veces


Ver Perfil
Re: Ayuda con DataGridView
« Respuesta #5 en: 23 Diciembre 2011, 15:14 »

¿Como estas asignando el datasource al control? Eso lo tienes que repetir.

Saludos
En línea

Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD
http://twitter.com/novlucker

"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein

bitaziko

Desconectado Desconectado

Mensajes: 18



Ver Perfil
Re: Ayuda con DataGridView
« Respuesta #6 en: 26 Diciembre 2011, 11:05 »

he probado lo siguiente y en cierto modo me ha funcionado vereis:
Código
Private Sub Form2_FormClosing(ByVal sender As System.Object, ByVal e As System.Windows.Forms.FormClosingEventArgHandles MyBase.FormClosing
 
MDIParent1.midatagrid.datasource = nombredeldatasource
MDIParent1.midatagrid.refresh ()
 
end sub

bien esto en el formclosing aparentemente funciona
pero cuando agrego el codigo al boton guardar en el formulario lo que hace es que me refresca todo el datagrid poniendolo en blanco....
En línea

La Suerte Favorece a los Niños,a los Locos y a las Naves llamadas Enterprise....
24K

Desconectado Desconectado

Mensajes: 8



Ver Perfil
Re: Ayuda con DataGridView
« Respuesta #7 en: 29 Diciembre 2011, 07:39 »

Hola bitaziko, yo hice algo así pero en C#, te lo paso de todas maneras haber si lo cambias nada mas.
En primer lugar cree una clase y en la clase un metodo llamado actualizarDataGrid,
en el form_load llamo a ese metodo y tambien cada bes que guardo algo en el evento click del boton Guardar, bueno algo asi:
Código
public void actualizarDataGrid(DataGridView dtg, string tabla)
       {
           da = new SqlDataAdapter("SELECT * FROM " + tabla, cadena);
           dt = new DataTable();
           da.Fill(dt);
           dtg.DataSource = dt;
       }
Como te das cuenta, es una metodo que no vuelve valores; y necesita dos argumentos, un datagridview y un string; el dataGridView es el que vas a actualizar, y el estring es la tabla que quieres que aparezca en ese dataGridView.
Ahora como utilizo, como ya sabes en la cabecera del codigo de tu formulario declaras la clase asi:
Código
namespace programacionI
{
   public partial class frmDocente : Form
   {
       public frmDocente()
       {
           InitializeComponent();
       }
 
       docentes doc = new docentes();
       private bool numero = false;
Si te das cuenta mi clase se llama docentes y estoy declarando un nuevo objeto "doc" del tipo docentes. Ahora como utilizamos el metodos en el form, asi:
Código
private void frmDocente_Load(object sender, EventArgs e)
       {
           doc.actualizarDataGrid(dtgDocentes, "docentes");
           dtgDocentes.Columns[0].Width = 40;
           dtgDocentes.Columns[1].Width = 255;
       }
ves que en el formulario frmDocentes ni bien abre me va a mostrar en el dataGridView "dtgDocentes" todos los datos ya guardados en la tabla "docentes" de mi base de datos. Ademas cambio el tamaño de las columnas en tiempo de ejecucion.
Ahora agregas un nuevo registro, tienes tu boton "btnGuardar" y le colocas este codigo:
Código
private void btnGuardar_Click(object sender, EventArgs e)
       {
           if ((txtID.Text != "") && (txtApellidos.Text != ""))
           {
               int codigo = Convert.ToInt16(this.txtID.Text);
               string apellidos = txtApellidos.Text;
               doc.guardarDocente(codigo, apellidos, dtgDocentes);
           }
           else
           {
               MessageBox.Show("Uno o mas campos no fueron llenados", "Error", MessageBoxButtons.OK,
                   MessageBoxIcon.Warning);
           }
           doc.limpiarTextBox(this);
           txtID.Focus();
       }
Como ves verifico que los textBox no esten vacios, Luego capturo el codigo y apellido y los llevo a mi metodo "guardarDocente"; ahi es donde utilizo el metodo"actualizarDatGrid", ya que el codigo de "guardarDocente" es este:
Código
public void guardarDocente(int codigo, string nombres, DataGridView dtg)
       {
           cnx = new SqlConnection(cadena);
           cmd = new SqlCommand();
           cmd.Connection = cnx;
           cmd.CommandText = "INSERT INTO docentes (iddoc, nomdoc) VALUES (@iddoc, @nomdoc)";
           cmd.Parameters.AddWithValue("@iddoc", codigo);
           cmd.Parameters.AddWithValue("@nomdoc", nombres);
           cnx.Open();
           try
           {
               cmd.ExecuteNonQuery();
               MessageBox.Show("Docente ingresado exitosamente");
               actualizarDataGrid(dtg, "docentes");
           }
           catch (Exception ex)
           {
               MessageBox.Show(ex.Message);
           }
           cnx.Close();
       }
Como vez, guardo el codigo y el nombre y apellido del docente, si se guarda bien, llamo al metodo actualizarDataGrid, si no solo sale un mensaje de error. Para que no te compliques (si lo vez complicado) utilizas el metodo actualizarDataGrid aparte en el boton y no en el metodo guardarDocente. No se como poner imagenes de mi Pc, sino te mostraria como hice mi formulario para que te guies.
Espero haberte ayudado, algun dia me dedicare a aprender vb.net
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
ayuda con la programacion de un datagridview en C#
.NET
user_b 3 12,130 Último mensaje 30 Mayo 2007, 14:54
por »~^~«CkNU!»~^~«
Ayuda con datagridview (SOLUCIONADO)
.NET
akonerz 3 2,246 Último mensaje 15 Septiembre 2009, 22:25
por akonerz
AYUDA Buscador en datagridview
.NET
alonsomzo 1 1,953 Último mensaje 26 Marzo 2010, 17:47
por Shell Root
Ayuda a ocultar un dato en un DataGridView
Bases de Datos
jacj0102 3 1,787 Último mensaje 18 Junio 2011, 18:09
por Novlucker
Ayuda con DataGridView y MySql
.NET
alexjoffre 3 300 Último mensaje 16 Enero 2012, 14:27
por alexjoffre
Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines