problema 6
-
Thursday, November 26, 2009 1:35 AMHola de nuevo aqui:
quisiera saber como seleccionar en una grilla un registro y q me lllene los textbox q estan en otro formulario- Edited by studentI Thursday, November 26, 2009 2:47 PM
All Replies
-
Thursday, November 26, 2009 2:48 AMSi puedes explicarte mejor seria de ayuda.
¿El formulario donde quieres cargar los datos ya esta abierto antes de que selecciones el registro de la grilla?
Puedes usar el evento CellContentClick y apartir de ahi obtener los datos de la fila seleccionada.
Saludos. -
Thursday, November 26, 2009 2:56 AM
mira mi formulario no esta abierto donde quiero transferir los datos lo q estoy haciendo es una busqueda de datos donde lo q yo quiero hacer despues de q me de el cliente selcionarlo y me lleve al otro formulario y me llene los textbox con los datos q eh seleccionado solo 2 textbox nombre y cod
en mi formulario1 :
try{
DataSet ob = new DataSet();
ob = o.obtenerdatoscliente(
int.Parse(Convert.ToString(textDNI.Text)));
dataGrid1.DataSource = ob.Tables[0];//datos obtenidos a partir de una busqueda auna tabla clientes
}
catch
{
MessageBox.Show("Datos no encontrado");
}
-
Thursday, November 26, 2009 7:06 AMmira please aqui te dejo el codigo q e intentado para seleccionar un registro :
private void dataGrid1_CurrentCellChanged(object sender, EventArgs e)
{
DataSet ob = new DataSet();ob = o.obtenerdatoscliente(
int.Parse(Convert.ToString(textDNI.Text)));
ob.Tables[0].Rows[0][1].ToString();
if ( ob.Tables[0].Columns.Count> 0)
{
for (int i = 0; i < ob.Tables[0].Columns.Count; i++)
{
dataGrid1.Select(i);
}
}
}
pero no se como puedo seleccionar el registro enviarlo a unos textbox en un formulario y no se como puedo mandarlo por favor te lo agradeceria por ejemplo del registro seleccionado quiero q me aparesca en el textboxt en el otro formulario su nombres en uno y su codigo en otro textboxt please ayudame -
Thursday, November 26, 2009 8:06 AMModerator
Hola,Espero poder ayudarteMira puedes hacerlo en el evento "SelectionChanged" del dataGridview:Tienes que comprobar que tenga filas seleccionadas con dataGridView1.SelectedRows.Count>0y a continuación tienes que tener los controles del segundo formulario de tipo publicos o guardar los valores del grid en propiedades del formulario 2.En el ejemplo que te paso, tengo las cajas de texto de tipo publico para que sean accesibles, y abro el formulario 2 de forma modal para bloquearlo.Si tienes alguna pregunta mas aqui estamos.private void dataGridView1_SelectionChanged(object sender, EventArgs e) { try { if (dataGridView1.SelectedRows.Count>0) { Form2 f =new Form2(); f.textBox1.Text=dataGridView1.SelectedRows[0].Cells[0].Value.ToString(); f.textBox2.Text = dataGridView1.SelectedRows[0].Cells[1].Value.ToString(); f.ShowDialog(); } } catch (Exception ex) { MessageBox.Show("Error"); } }Un saludo
Mi Blog: Jtorrecilla- Proposed As Answer by jtorrecillaMVP, Moderator Thursday, November 26, 2009 8:06 AM
- Unproposed As Answer by studentI Thursday, November 26, 2009 2:55 PM
-
Thursday, November 26, 2009 3:05 PMhjdfhjdhf
- Edited by studentI Sunday, November 29, 2009 3:24 AM
-
Thursday, November 26, 2009 3:22 PMModerator
hola
Utilizar DataGrid en .NET Compact Framework
el tema pasa porque el Select no devuelve ningun dato, solo selecciona la fila, pero no tiene retorno de esta
DataGrid. Select (Método) (Int32)
por ahi deberias utilizar la propiedad
DataGrid. CurrentRowIndex
DataGrid. Item (Propiedad) (Int32, Int32)
podrias hacer:
f.textBox3.Text = Convert.ToString(dataGrid1.item(DataGrid.CurrentRowIndex, 0));
o por ahi funcione con:
f.textBox3.Text = Convert.ToString(dataGrid1[DataGrid.CurrentRowIndex, 0]);
saludos
Leandro Tuttini
Blog
Buenos Aires
Argentina- Proposed As Answer by Juan Carlos Ruiz [BogotaDotNet.org]Moderator Friday, November 27, 2009 3:18 PM
-
Thursday, November 26, 2009 3:29 PMModerator
Hola podrias probar con DataGrid1.CurrentCell.RowNumber?? Eso en teoria te va a dar el valor de la fila de la celda actual, abajo te pongo un ejemplo.private void dataGrid1_CurrentCellChanged(object sender, EventArgs e) { //if (dataGrid1.VisibleRowCount > 0) // { try { if (dataGrid1.VisibleRowCount > 0) { Enviosdedinero f = new Enviosdedinero(); f.textBox3.Text = dataGrid1.Select(0);//pero me sale error f.textBox8.Text =dataGrid1.rows[dataGrid1.CurrentCell.RowNumber].cell["Celda"].Value.ToString(); f.ShowDialog(); } } catch (Exception ex) { MessageBox.Show("Error"); }
Mi Blog: Jtorrecilla -
Thursday, November 26, 2009 4:10 PMnnsnnsn
- Edited by studentI Sunday, November 29, 2009 3:23 AM
-
Thursday, November 26, 2009 4:13 PMModeratorSi le pones el currentRowIndex.Tostring te va a poner el valor dle indice de la actual celda,tendras que poner algo como dataGrid1.Rows[datagrid1.CurrentRowIndex].cells["celda 1"] donde celda 1 será la celda que le quieres asignar al textbox....
Mi Blog: Jtorrecilla -
Thursday, November 26, 2009 4:18 PMModerator
hola
hasta dnde puede ver el DataGrid, no tiene la propiedad Rows
este la tiene el DataGridView
es por eso que recomendaba probar con
f.textBox3.Text = Convert.ToString(dataGrid1.item(DataGrid.CurrentRowIndex, 0));
o por ahi funcione con:
f.textBox3.Text = Convert.ToString(dataGrid1[DataGrid.CurrentRowIndex, 0]);
saludos
Leandro Tuttini
Blog
Buenos Aires
Argentina- Marked As Answer by studentI Sunday, November 29, 2009 3:23 AM
-
Sunday, December 13, 2009 6:29 AM
Hola podrias probar con DataGrid1.CurrentCell.RowNumber?? Eso en teoria te va a dar el valor de la fila de la celda actual, abajo te pongo un ejemplo.
private void dataGrid1_CurrentCellChanged(object sender, EventArgs e) { //if (dataGrid1.VisibleRowCount > 0) // { try { if (dataGrid1.VisibleRowCount > 0) { Form2 f = new Form2(); f.textBox3.Text = dataGrid1.Select(0);//pero me sale error f.textBox8.Text =dataGrid1.rows[dataGrid1.CurrentCell.RowNumber].cell["Celda"].Value.ToString(); f.ShowDialog(); } } catch (Exception ex) { MessageBox.Show("Error"); }
Mi Blog: Jtorrecilla

