Ayuda Novato

02/03/2006 - 15:39 por Mauro | Informe spam
Ayer instale el VS 2005 profesional, agregre un datagrid a una aplicacion
windows con las opciones de insercion borrado edicion etc, cuando hago un
DEBUG de la aplicacion, el mismo dme devuelve los datos de la bd
pero cuando edito o borro o agrego datos al grid, no se reflejan en la bd.
Por que?

Preguntas similare

Leer las respuestas

#1 Luis Miguel Blanco
05/03/2006 - 12:46 | Informe spam
Hola Mauro

Supongo que has agregado el datagrid a tu formulario utilizando el asistente
para configurar la conexión de datos al grid, lo cual tiene la ventaja de que
te facilita el proceso de creación del control, pero oculta algunos aspectos
que en algunos casos es necesario conocer.

Con toda seguridad, este asistente del datagrid, habrá añadido en la parte
inferior del diseñador del formulario un objeto DataSet y un TableAdapter,
los cuales necesita el DataGrid a la hora de obtener/actualizar la
información desde/hacia la base de datos.

Más concretamente, el objeto TableAdapter, es el encargado de tomar la
conexión contra la base de datos, establecer dicha conexión, y rellenar el
DataSet con los datos de una tabla que será la que muestre el DataGrid.
Fíjate en el evento Load() de tu formulario, y seguramente tendrás una línea
en la que el objeto TableAdapter rellena el DataSet de forma parecida a la
siguiente:

'//////////////////////////
Me.NombreBBDDTablaTableAdapter.Fill(Me.NombreBBDDDataSet.NombreTabla)
'//////////////////////////

Es por ello, que al ejecutar tu aplicación, el asistente del DataGrid se ha
ocupado de rellenar este control con los datos para que navegues por la
tabla, edites, añadas registros, etc.

El único detalle que en este caso falta, y que debemos hacer nosotros
manualmente, sería indicar al DataSet asociado al DataGrid, y que es quien
realmente tiene los datos, que cuando hayamos terminado de editarlos,
actualice de nuevo la tabla física de la base de datos con la que tenemos en
el DataSet, ya que en caso contrario, la información del DataSet, al tratarse
de datos desconectados de la base de datos, se perdería.

Esto lo puedes hacer en el evento de descarga el formulario, con un control
Button, etc. Por ejemplo, si lo haces en el Click de un botón, sería de forma
similar a la siguiente:

'//////////////////////////
Private Sub btnActualizarBD_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnActualizarBD.Click

Me.NombreBBDDTablaTableAdapter.Update(Me.NombreBBDDDataSet.NombreTabla)

End Sub
'//////////////////////////

Prueba añadiendo este código a tu proyecto y creo que ya te funcionará la
actualización.
Un saludo
Luis Miguel Blanco
http://www.dotnetmania.com


"Mauro" wrote:

Ayer instale el VS 2005 profesional, agregre un datagrid a una aplicacion
windows con las opciones de insercion borrado edicion etc, cuando hago un
DEBUG de la aplicacion, el mismo dme devuelve los datos de la bd
pero cuando edito o borro o agrego datos al grid, no se reflejan en la bd.
Por que?



Respuesta Responder a este mensaje
#2 Mauro
06/03/2006 - 13:26 | Informe spam
Muchas gracias Luis!!! ya lo hice funcionar, ahora tengo otra duda, como
hago para hacer formularios de datos con tablas relacionadas(lookuptables en
los BOLs)
Vi un ejemplo en la ayuda pero solo sirve para formularios de tipo detalles,
si agrego una grilla al formulario, la misma me muestra la info
correspondiente
al valor seleccionado en el combo de los detalles(como un WHERE), ademas no
puedo hacer que la grilla me muestre el valor relacionado , tal como el
combo en los detalles. sino que me muestra la columna ID de la clave
foranea.

espero que se entienda
Mauro



"Luis Miguel Blanco" wrote in
message news:
Hola Mauro

Supongo que has agregado el datagrid a tu formulario utilizando el


asistente
para configurar la conexión de datos al grid, lo cual tiene la ventaja de


que
te facilita el proceso de creación del control, pero oculta algunos


aspectos
que en algunos casos es necesario conocer.

Con toda seguridad, este asistente del datagrid, habrá añadido en la parte
inferior del diseñador del formulario un objeto DataSet y un TableAdapter,
los cuales necesita el DataGrid a la hora de obtener/actualizar la
información desde/hacia la base de datos.

Más concretamente, el objeto TableAdapter, es el encargado de tomar la
conexión contra la base de datos, establecer dicha conexión, y rellenar el
DataSet con los datos de una tabla que será la que muestre el DataGrid.
Fíjate en el evento Load() de tu formulario, y seguramente tendrás una


línea
en la que el objeto TableAdapter rellena el DataSet de forma parecida a la
siguiente:

'//////////////////////////
Me.NombreBBDDTablaTableAdapter.Fill(Me.NombreBBDDDataSet.NombreTabla)
'//////////////////////////

Es por ello, que al ejecutar tu aplicación, el asistente del DataGrid se


ha
ocupado de rellenar este control con los datos para que navegues por la
tabla, edites, añadas registros, etc.

El único detalle que en este caso falta, y que debemos hacer nosotros
manualmente, sería indicar al DataSet asociado al DataGrid, y que es quien
realmente tiene los datos, que cuando hayamos terminado de editarlos,
actualice de nuevo la tabla física de la base de datos con la que tenemos


en
el DataSet, ya que en caso contrario, la información del DataSet, al


tratarse
de datos desconectados de la base de datos, se perdería.

Esto lo puedes hacer en el evento de descarga el formulario, con un


control
Button, etc. Por ejemplo, si lo haces en el Click de un botón, sería de


forma
similar a la siguiente:

'//////////////////////////
Private Sub btnActualizarBD_Click(ByVal sender As System.Object, ByVal e


As
System.EventArgs) Handles btnActualizarBD.Click

Me.NombreBBDDTablaTableAdapter.Update(Me.NombreBBDDDataSet.NombreTabla)

End Sub
'//////////////////////////

Prueba añadiendo este código a tu proyecto y creo que ya te funcionará la
actualización.
Un saludo
Luis Miguel Blanco
http://www.dotnetmania.com


"Mauro" wrote:

> Ayer instale el VS 2005 profesional, agregre un datagrid a una


aplicacion
> windows con las opciones de insercion borrado edicion etc, cuando hago


un
> DEBUG de la aplicacion, el mismo dme devuelve los datos de la bd
> pero cuando edito o borro o agrego datos al grid, no se reflejan en la


bd.
> Por que?
>
>
>
Respuesta Responder a este mensaje
#3 Luis Miguel Blanco
06/03/2006 - 23:30 | Informe spam
Hola Mauro

No hay de qué, celebro que te funcionara 8-)

Respecto a tu duda acerca de las lookuptables, no llego a comprender del
todo el escenario que me planteas, por lo que te agradecería que me
detallaras un poco más lo que quieres hacer, en lo referente a qué controles
quieres usar en tu formulario, qué información debería almacenar cada
control, y el resultado al interaccionar con dichos controles.

Si utilizas SQL Server, puedes usar la base de datos de ejemplo Northwind
para los ejemplos con las tablas que me envíes.

Un saludo
Luis Miguel Blanco
http://www.dotnetmania.com


"Mauro" wrote:

Muchas gracias Luis!!! ya lo hice funcionar, ahora tengo otra duda, como
hago para hacer formularios de datos con tablas relacionadas(lookuptables en
los BOLs)
Vi un ejemplo en la ayuda pero solo sirve para formularios de tipo detalles,
si agrego una grilla al formulario, la misma me muestra la info
correspondiente
al valor seleccionado en el combo de los detalles(como un WHERE), ademas no
puedo hacer que la grilla me muestre el valor relacionado , tal como el
combo en los detalles. sino que me muestra la columna ID de la clave
foranea.

espero que se entienda
Mauro



"Luis Miguel Blanco" wrote in
message news:
> Hola Mauro
>
> Supongo que has agregado el datagrid a tu formulario utilizando el
asistente
> para configurar la conexión de datos al grid, lo cual tiene la ventaja de
que
> te facilita el proceso de creación del control, pero oculta algunos
aspectos
> que en algunos casos es necesario conocer.
>
> Con toda seguridad, este asistente del datagrid, habrá añadido en la parte
> inferior del diseñador del formulario un objeto DataSet y un TableAdapter,
> los cuales necesita el DataGrid a la hora de obtener/actualizar la
> información desde/hacia la base de datos.
>
> Más concretamente, el objeto TableAdapter, es el encargado de tomar la
> conexión contra la base de datos, establecer dicha conexión, y rellenar el
> DataSet con los datos de una tabla que será la que muestre el DataGrid.
> Fíjate en el evento Load() de tu formulario, y seguramente tendrás una
línea
> en la que el objeto TableAdapter rellena el DataSet de forma parecida a la
> siguiente:
>
> '//////////////////////////
> Me.NombreBBDDTablaTableAdapter.Fill(Me.NombreBBDDDataSet.NombreTabla)
> '//////////////////////////
>
> Es por ello, que al ejecutar tu aplicación, el asistente del DataGrid se
ha
> ocupado de rellenar este control con los datos para que navegues por la
> tabla, edites, añadas registros, etc.
>
> El único detalle que en este caso falta, y que debemos hacer nosotros
> manualmente, sería indicar al DataSet asociado al DataGrid, y que es quien
> realmente tiene los datos, que cuando hayamos terminado de editarlos,
> actualice de nuevo la tabla física de la base de datos con la que tenemos
en
> el DataSet, ya que en caso contrario, la información del DataSet, al
tratarse
> de datos desconectados de la base de datos, se perdería.
>
> Esto lo puedes hacer en el evento de descarga el formulario, con un
control
> Button, etc. Por ejemplo, si lo haces en el Click de un botón, sería de
forma
> similar a la siguiente:
>
> '//////////////////////////
> Private Sub btnActualizarBD_Click(ByVal sender As System.Object, ByVal e
As
> System.EventArgs) Handles btnActualizarBD.Click
>
> Me.NombreBBDDTablaTableAdapter.Update(Me.NombreBBDDDataSet.NombreTabla)
>
> End Sub
> '//////////////////////////
>
> Prueba añadiendo este código a tu proyecto y creo que ya te funcionará la
> actualización.
> Un saludo
> Luis Miguel Blanco
> http://www.dotnetmania.com
>
>
> "Mauro" wrote:
>
> > Ayer instale el VS 2005 profesional, agregre un datagrid a una
aplicacion
> > windows con las opciones de insercion borrado edicion etc, cuando hago
un
> > DEBUG de la aplicacion, el mismo dme devuelve los datos de la bd
> > pero cuando edito o borro o agrego datos al grid, no se reflejan en la
bd.
> > Por que?
> >
> >
> >



Respuesta Responder a este mensaje
#4 Mauro
07/03/2006 - 13:36 | Informe spam
bien, supongamos que tengo 2 tablas, una llamada DEPOSITO con los campos
DEP_ID y DEP_DESCRIPCION
y una segunda tabla que la referencia llamada MAQUINA con los campos MAQ_ID,
MAQ_NOMBRE y DEP_ID
siendo en DEP_ID una clave foranea que referencia a la tabla DEPOSITO.

Con ese escenario lo que quiero lograr es tener una grilla con los datos de
las MAQUINAS pero que en lugar de mostrarme el id del deposito, me muetre la
descripcion del mismo, y que ademas al agregar un registro o modificarlo,
que en la columna se despliegue un combobox con las descripciones de los
depositos

pero obviamente guardando el ID.

he logrado hacerlo con el formulario de tipo detalles(arrastrando desde el
data source la tabla primaria al combobox), pero no con la grilla y me
interesa mucho por que suelo mostrar la grilla y los detalles en el mismo
formulario, asi lo hacia en VB6, veo que estas cosas estan muy
simplificadas en el 2005, pero aun no le
encuentro la vuelta de tuerca necesaria para este tipo de formulario.

saludos y gracias adelantadas.
Mauro

"Luis Miguel Blanco" wrote in
message news:
Hola Mauro

No hay de qué, celebro que te funcionara 8-)

Respecto a tu duda acerca de las lookuptables, no llego a comprender del
todo el escenario que me planteas, por lo que te agradecería que me
detallaras un poco más lo que quieres hacer, en lo referente a qué


controles
quieres usar en tu formulario, qué información debería almacenar cada
control, y el resultado al interaccionar con dichos controles.

Si utilizas SQL Server, puedes usar la base de datos de ejemplo Northwind
para los ejemplos con las tablas que me envíes.

Un saludo
Luis Miguel Blanco
http://www.dotnetmania.com


"Mauro" wrote:

> Muchas gracias Luis!!! ya lo hice funcionar, ahora tengo otra duda, como
> hago para hacer formularios de datos con tablas


relacionadas(lookuptables en
> los BOLs)
> Vi un ejemplo en la ayuda pero solo sirve para formularios de tipo


detalles,
> si agrego una grilla al formulario, la misma me muestra la info
> correspondiente
> al valor seleccionado en el combo de los detalles(como un WHERE), ademas


no
> puedo hacer que la grilla me muestre el valor relacionado , tal como el
> combo en los detalles. sino que me muestra la columna ID de la clave
> foranea.
>
> espero que se entienda
> Mauro
>
>
>
> "Luis Miguel Blanco" wrote


in
> message news:
> > Hola Mauro
> >
> > Supongo que has agregado el datagrid a tu formulario utilizando el
> asistente
> > para configurar la conexión de datos al grid, lo cual tiene la ventaja


de
> que
> > te facilita el proceso de creación del control, pero oculta algunos
> aspectos
> > que en algunos casos es necesario conocer.
> >
> > Con toda seguridad, este asistente del datagrid, habrá añadido en la


parte
> > inferior del diseñador del formulario un objeto DataSet y un


TableAdapter,
> > los cuales necesita el DataGrid a la hora de obtener/actualizar la
> > información desde/hacia la base de datos.
> >
> > Más concretamente, el objeto TableAdapter, es el encargado de tomar la
> > conexión contra la base de datos, establecer dicha conexión, y


rellenar el
> > DataSet con los datos de una tabla que será la que muestre el


DataGrid.
> > Fíjate en el evento Load() de tu formulario, y seguramente tendrás una
> línea
> > en la que el objeto TableAdapter rellena el DataSet de forma parecida


a la
> > siguiente:
> >
> > '//////////////////////////
> > Me.NombreBBDDTablaTableAdapter.Fill(Me.NombreBBDDDataSet.NombreTabla)
> > '//////////////////////////
> >
> > Es por ello, que al ejecutar tu aplicación, el asistente del DataGrid


se
> ha
> > ocupado de rellenar este control con los datos para que navegues por


la
> > tabla, edites, añadas registros, etc.
> >
> > El único detalle que en este caso falta, y que debemos hacer nosotros
> > manualmente, sería indicar al DataSet asociado al DataGrid, y que es


quien
> > realmente tiene los datos, que cuando hayamos terminado de editarlos,
> > actualice de nuevo la tabla física de la base de datos con la que


tenemos
> en
> > el DataSet, ya que en caso contrario, la información del DataSet, al
> tratarse
> > de datos desconectados de la base de datos, se perdería.
> >
> > Esto lo puedes hacer en el evento de descarga el formulario, con un
> control
> > Button, etc. Por ejemplo, si lo haces en el Click de un botón, sería


de
> forma
> > similar a la siguiente:
> >
> > '//////////////////////////
> > Private Sub btnActualizarBD_Click(ByVal sender As System.Object, ByVal


e
> As
> > System.EventArgs) Handles btnActualizarBD.Click
> >
> >


Me.NombreBBDDTablaTableAdapter.Update(Me.NombreBBDDDataSet.NombreTabla)
> >
> > End Sub
> > '//////////////////////////
> >
> > Prueba añadiendo este código a tu proyecto y creo que ya te funcionará


la
> > actualización.
> > Un saludo
> > Luis Miguel Blanco
> > http://www.dotnetmania.com
> >
> >
> > "Mauro" wrote:
> >
> > > Ayer instale el VS 2005 profesional, agregre un datagrid a una
> aplicacion
> > > windows con las opciones de insercion borrado edicion etc, cuando


hago
> un
> > > DEBUG de la aplicacion, el mismo dme devuelve los datos de la bd
> > > pero cuando edito o borro o agrego datos al grid, no se reflejan en


la
> bd.
> > > Por que?
> > >
> > >
> > >
>
>
>
Respuesta Responder a este mensaje
#5 Luis Miguel Blanco
10/03/2006 - 07:43 | Informe spam
Hola Mauro

En primer lugar discúlpame por el retraso en mi respuesta, pero he tenido
una acumulación de trabajo importante en estos dos últimos días que me han
impedido entrar en los foros con la regularidad necesaria.

Después de leer el escenario que planteas, he simulado el modelo de datos
que me proporcionaste, creando una base de datos en SQL Server con estas dos
tablas MAQUINA y DEPOSITO.

A continuación, en un formulario, he agregado un DataGridView, y lo he
cargado con los datos de la tabla MAQUINA. Ahora entramos en el punto
importante de esta cuestión: conseguir que el último campo en el
DataGridView, en lugar de mostrar el campo DEP_ID, se conecte con la tabla
DEPOSITO, y muestre de dicha tabla, el valor del campo DEP_DESCRIPCION, y
para rizar el rizo 8-) que además, cuando el usuario se sitúe en una de
dichas celdas, que pueda abrir un ComboBox, que le muestre todos los valores
del campo DEP_DESCRIPCION de la tabla DEPOSITO.

Para conseguir esto, en primer lugar debemos eliminar del diseño actual del
DataGrid, la columna correspondiente al campo DEP_ID de la tabla MAQUINA. A
continuación, crearemos un objeto de la clase DataGridViewComboBoxColumn, que
como podemos adivinar por su nombre, consiste en una columna para usar en un
control DataGrid, que nos visualizará las celdas en formato ComboBox.

Como siguiente paso, configuraremos el objeto DataGridViewComboBoxColumn
para que se conecte con la tabla DEPOSITO, y que rellene la lista con los
valores del campo DEP_DESCRIPCION, pero devolviendo internamente como valor
seleccionado, el campo DEP_ID. Agregaremos este objeto a la colección de
columnas del DataGridView, y a partir de ese momento, dicha columna del Grid
nos devolverá el identificador del depósito.

Bien, pues creo que estos serían los principales pasos a dar, te adjunto un
bloque de código con un ejemplo para que lo pruebes, y hagas las adaptaciones
que necesites para tu caso.

'//////////////////////////////////////////////////////////////////
Imports System.Data.SqlClient

Public Class Form3
Private Sub Form3_Load(ByVal sender As Object, ByVal e As
System.EventArgs) Handles Me.Load
Dim sCadConex As String
sCadConex = "Integrated Security=SSPI;Persist Security Info=False;"
& _
"Initial Catalog=MAQUINARIA;Data Source=localhost"

Dim oConexion As New SqlConnection(sCadConex)

Dim oComando As New SqlCommand("SELECT * FROM MAQUINA", oConexion)
Dim oAdapter As New SqlDataAdapter()
oAdapter.SelectCommand = oComando
Dim oTable1 As New DataTable()
oTable1.Locale = System.Globalization.CultureInfo.InvariantCulture
oConexion.Open()
oAdapter.Fill(oTable1)
oConexion.Close()

Me.DataGridView1.DataSource = oTable1
Me.DataGridView1.Columns.Remove("DEP_ID")


Dim oConexion2 As New SqlConnection(sCadConex)
Dim oComando2 As New SqlCommand("SELECT * FROM DEPOSITO", oConexion)
Dim oAdapter2 As New SqlDataAdapter()
oAdapter2.SelectCommand = oComando2
Dim oTable2 As New DataTable()
oTable2.Locale = System.Globalization.CultureInfo.InvariantCulture
oConexion2.Open()
oAdapter2.Fill(oTable2)
oConexion2.Close()


Dim oComboboxCol As New DataGridViewComboBoxColumn()
oComboboxCol.Name = "colDeposito"
oComboboxCol.HeaderText = "Deposito"
oComboboxCol.DataSource = oTable2
oComboboxCol.DataPropertyName = "DEP_DESCRIPCION"
oComboboxCol.ValueMember = "DEP_ID"
oComboboxCol.DisplayMember = "DEP_DESCRIPCION"

Me.DataGridView1.Columns.Add(oComboboxCol)
End Sub

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button1.Click
Dim aFilas As DataGridViewRowCollection
aFilas = Me.DataGridView1.Rows

For Each oFila As DataGridViewRow In aFilas
For Each celda As DataGridViewCell In oFila.Cells
If celda.ColumnIndex = 2 Then
Dim scelda As Object
scelda = celda.Value
MessageBox.Show(scelda)
End If
Next
Next
End Sub
End Class
'//////////////////////////////////////////////////////////////////

Espero que sea lo que necesitabas.
Un saludo
Luis Miguel Blanco
http://www.dotnetmania.com


"Mauro" wrote:

bien, supongamos que tengo 2 tablas, una llamada DEPOSITO con los campos
DEP_ID y DEP_DESCRIPCION
y una segunda tabla que la referencia llamada MAQUINA con los campos MAQ_ID,
MAQ_NOMBRE y DEP_ID
siendo en DEP_ID una clave foranea que referencia a la tabla DEPOSITO.

Con ese escenario lo que quiero lograr es tener una grilla con los datos de
las MAQUINAS pero que en lugar de mostrarme el id del deposito, me muetre la
descripcion del mismo, y que ademas al agregar un registro o modificarlo,
que en la columna se despliegue un combobox con las descripciones de los
depositos

pero obviamente guardando el ID.

he logrado hacerlo con el formulario de tipo detalles(arrastrando desde el
data source la tabla primaria al combobox), pero no con la grilla y me
interesa mucho por que suelo mostrar la grilla y los detalles en el mismo
formulario, asi lo hacia en VB6, veo que estas cosas estan muy
simplificadas en el 2005, pero aun no le
encuentro la vuelta de tuerca necesaria para este tipo de formulario.

saludos y gracias adelantadas.
Mauro

"Luis Miguel Blanco" wrote in
message news:
> Hola Mauro
>
> No hay de qué, celebro que te funcionara 8-)
>
> Respecto a tu duda acerca de las lookuptables, no llego a comprender del
> todo el escenario que me planteas, por lo que te agradecería que me
> detallaras un poco más lo que quieres hacer, en lo referente a qué
controles
> quieres usar en tu formulario, qué información debería almacenar cada
> control, y el resultado al interaccionar con dichos controles.
>
> Si utilizas SQL Server, puedes usar la base de datos de ejemplo Northwind
> para los ejemplos con las tablas que me envíes.
>
> Un saludo
> Luis Miguel Blanco
> http://www.dotnetmania.com
>
>
> "Mauro" wrote:
>
> > Muchas gracias Luis!!! ya lo hice funcionar, ahora tengo otra duda, como
> > hago para hacer formularios de datos con tablas
relacionadas(lookuptables en
> > los BOLs)
> > Vi un ejemplo en la ayuda pero solo sirve para formularios de tipo
detalles,
> > si agrego una grilla al formulario, la misma me muestra la info
> > correspondiente
> > al valor seleccionado en el combo de los detalles(como un WHERE), ademas
no
> > puedo hacer que la grilla me muestre el valor relacionado , tal como el
> > combo en los detalles. sino que me muestra la columna ID de la clave
> > foranea.
> >
> > espero que se entienda
> > Mauro
> >
> >
> >
> > "Luis Miguel Blanco" wrote
in
> > message news:
> > > Hola Mauro
> > >
> > > Supongo que has agregado el datagrid a tu formulario utilizando el
> > asistente
> > > para configurar la conexión de datos al grid, lo cual tiene la ventaja
de
> > que
> > > te facilita el proceso de creación del control, pero oculta algunos
> > aspectos
> > > que en algunos casos es necesario conocer.
> > >
> > > Con toda seguridad, este asistente del datagrid, habrá añadido en la
parte
> > > inferior del diseñador del formulario un objeto DataSet y un
TableAdapter,
> > > los cuales necesita el DataGrid a la hora de obtener/actualizar la
> > > información desde/hacia la base de datos.
> > >
> > > Más concretamente, el objeto TableAdapter, es el encargado de tomar la
> > > conexión contra la base de datos, establecer dicha conexión, y
rellenar el
> > > DataSet con los datos de una tabla que será la que muestre el
DataGrid.
> > > Fíjate en el evento Load() de tu formulario, y seguramente tendrás una
> > línea
> > > en la que el objeto TableAdapter rellena el DataSet de forma parecida
a la
> > > siguiente:
> > >
> > > '//////////////////////////
> > > Me.NombreBBDDTablaTableAdapter.Fill(Me.NombreBBDDDataSet.NombreTabla)
> > > '//////////////////////////
> > >
> > > Es por ello, que al ejecutar tu aplicación, el asistente del DataGrid
se
> > ha
> > > ocupado de rellenar este control con los datos para que navegues por
la
> > > tabla, edites, añadas registros, etc.
> > >
> > > El único detalle que en este caso falta, y que debemos hacer nosotros
> > > manualmente, sería indicar al DataSet asociado al DataGrid, y que es
quien
> > > realmente tiene los datos, que cuando hayamos terminado de editarlos,
> > > actualice de nuevo la tabla física de la base de datos con la que
tenemos
> > en
> > > el DataSet, ya que en caso contrario, la información del DataSet, al
> > tratarse
> > > de datos desconectados de la base de datos, se perdería.
> > >
> > > Esto lo puedes hacer en el evento de descarga el formulario, con un
> > control
> > > Button, etc. Por ejemplo, si lo haces en el Click de un botón, sería
de
> > forma
> > > similar a la siguiente:
> > >
> > > '//////////////////////////
> > > Private Sub btnActualizarBD_Click(ByVal sender As System.Object, ByVal
e
> > As
> > > System.EventArgs) Handles btnActualizarBD.Click
> > >
> > >
Me.NombreBBDDTablaTableAdapter.Update(Me.NombreBBDDDataSet.NombreTabla)
> > >
> > > End Sub
> > > '//////////////////////////
> > >
> > > Prueba añadiendo este código a tu proyecto y creo que ya te funcionará
la
> > > actualización.
> > > Un saludo
> > > Luis Miguel Blanco
> > > http://www.dotnetmania.com
> > >
> > >
> > > "Mauro" wrote:
> > >
> > > > Ayer instale el VS 2005 profesional, agregre un datagrid a una
> > aplicacion
> > > > windows con las opciones de insercion borrado edicion etc, cuando
hago
> > un
> > > > DEBUG de la aplicacion, el mismo dme devuelve los datos de la bd
> > > > pero cuando edito o borro o agrego datos al grid, no se reflejan en
la
> > bd.
> > > > Por que?
> > > >
> > > >
> > > >
> >
> >
> >



Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida