C sharp - MODIFICAR DATAGRID

 
Vista:

MODIFICAR DATAGRID

Publicado por Pettete (22 intervenciones) el 06/02/2018 09:38:28
Hola buenas,
no se como hacerlo llevo ya tiempo intentandolo y no me sale.

La cosa es que quiero modificar un datagrid en tiempo de ejecución.
quiero modificar cualquier registro de la tabla y que al pulsar un botón estos cambios se guarden tanto en el datagrid como en la base de datos.

Algún consejillo?

Un saludo de vuestro y vecino,
PETETE;)
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

MODIFICAR DATAGRID

Publicado por Pettete (22 intervenciones) el 06/02/2018 10:53:09
Hola buenas,
he conseguido que se actualice y se guarde el dato pero...(siempre hay un pero.. jajjaja)
El dato se guarda en toda la columna.. estoy pensando en limitar la query pero no se como hacerlo.
con limitar me refiero a que solo se aplique a la celda seleccionada.
Mi código al respecto es el siguiente:
1
2
3
4
5
6
7
8
9
10
11
12
13
string  VALOR = txtACTUALIZAR.Text;
                object celda = this.dataGridView1.CurrentCell.Value;
 
 
               celda = txtACTUALIZAR.Text;
 
                 TA.UpdateQuery1(VALOR);
                 dataGridView1.Update();
 
 
La query es la siguiente.
[code]
Update RECLAMACIONES.VNC.REEVISIONESVNC SET CODIGO=@VALOR
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

MODIFICAR DATAGRID

Publicado por Pettete (22 intervenciones) el 07/02/2018 08:06:52
La cosa es que no se como insertar un where que sea de celda elegida. el where sería la celda que yo seleccione en tiempo de ejecución
en el datagridview...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

MODIFICAR DATAGRID

Publicado por Pettete (22 intervenciones) el 07/02/2018 08:57:19
No entiendo la finalidad del código del link.
1
2
3
4
5
6
7
8
9
10
if (!(e.RowIndex > -1))
                 return;
 
                //obtienes la fila seleccionada
                DataGridViewRow row = dataGridView1.Rows(e.RowIndex);
 
                 //por el numero obtiene la columna
                string valor1 = row.Cells(0).Value;
                string valor2 = row.Cells(1).Value;
                string valor3 = row.Cells(2).Value;

Si el código mete un valor de las celdas 0,1 y 2 en las variables Valor pero, a parte de que me da error, luego solo tendria que meter la variable valor en el where no?
pero no se como...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

MODIFICAR DATAGRID

Publicado por Pettete (22 intervenciones) el 07/02/2018 10:58:22
hay alguna manera de hacer esto pero mas simplificado?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
DataGridViewRow row = dataGridView1.Rows[0];
 
string celda1 = Convert.ToString(row.Cells[1].Value);
string celda2 = Convert.ToString(row.Cells[2].Value);
string celda3 = Convert.ToString(row.Cells[3].Value);
string celda4 = Convert.ToString(row.Cells[4].Value);
string celda5 = Convert.ToString(row.Cells[5].Value);
 
string COD_CONTRATO = txtCONTRATO.Text;
string  VALOR1 = txtACTUALIZAR.Text;
 
string  VALOR2;// = textBox1.Text;
if (textBox1.Text == "")
	VALOR2 = celda4;
else
{
	VALOR2 = textBox1.Text;
}
 
 
//valor1= nir--valor2=codclient
TA.UpdateQuery1(VALOR1, VALOR2, COD_CONTRATO);

Solo me tendría que actualizar la celda del datagrid en la que haga click.
De la manera que hos he facilitado me habce bien pero claro, mi tabla tiene 55 columnas y no quiero poner 55 textbox. mi idea es poner 1 texbox y que ese texbox valga para todas las celdas. Por eso necesito que el textbox se enlace con la celda seleccionada.
y solo con la celda seleccionada.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar