locked
Foco en una celda de un datagridview RRS feed

  • Pregunta

  • Hola amigos quería saber si alguien me puede ayudar con este pequeño problema q tengo con datagrid.

    Quiero enviar el foco desde la primera columna a la cuarta y no sé cómo hacerlo, he intentado varias opciones pero ninguna me ha funcionado.

    Gracias…..

     

    martes, 12 de enero de 2010 15:20

Respuestas

  • hola

    la grilla que usas es el DataGridView ?

    si es asi podrias hacer

    DataGridView1.CurrentRow.Cells(3).Selected = True

    recuerda que los indices de la coleciones son abse cero, peor lo tanto tu 4 columan es la nuemro tres, y aque empiezas a contar en cero que es tu primer columna


    saludos
    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    • Marcado como respuesta Royglez martes, 12 de enero de 2010 19:18
    martes, 12 de enero de 2010 15:58
  • hola

    el ejemplo que pase esta mas bien pensado para usar un boton y realziar esta oepracion

    si lo haces desde un evento podrias hacer

    DataGridView1.Rows(e.RowIndex).Cells(3).Selected = True

    por lo general en el argumento del evento pasa el indice de la row que se esta trabajando


    saludos
    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    • Marcado como respuesta Pablo Rubio lunes, 12 de febrero de 2018 16:38
    martes, 12 de enero de 2010 19:24
  • FOCUS LISTO PARA DIGITAR

    //PARA ESTO ANTES TENEMOS QUE IR A EVENTOS DEL GRID Y HABILITAR EL EVENTO CELLDOUBLE CLICK

    //ES ALGO TONTO PERO FUNCIONA

    // Este Codigo Puede ir Dentro de un Button 

    NOMBRE_GRID.CurrentCell =NOMBRE_GRID.Rows[numRows].Cells[numCell];           

    NOMBRE_GRID.BeginEdit(true); //ABRIR LA EDICION DE LA CELDA

    nombre_grid_CellDoubleClick(sender,newDataGridViewCellEventArgs(columnIndex,rowsIndex));

    • Marcado como respuesta Pablo Rubio lunes, 12 de febrero de 2018 16:38
    jueves, 8 de febrero de 2018 16:58

Todas las respuestas

  • hola

    la grilla que usas es el DataGridView ?

    si es asi podrias hacer

    DataGridView1.CurrentRow.Cells(3).Selected = True

    recuerda que los indices de la coleciones son abse cero, peor lo tanto tu 4 columan es la nuemro tres, y aque empiezas a contar en cero que es tu primer columna


    saludos
    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    • Marcado como respuesta Royglez martes, 12 de enero de 2010 19:18
    martes, 12 de enero de 2010 15:58
  • gracias leandro pero te hago otra pregunta. En q evento lo tengo q utilizar por q creo q ahi esta el problema... por que de igual forma no lo puedo hacer... gracias....

    martes, 12 de enero de 2010 19:21
  • hola

    el ejemplo que pase esta mas bien pensado para usar un boton y realziar esta oepracion

    si lo haces desde un evento podrias hacer

    DataGridView1.Rows(e.RowIndex).Cells(3).Selected = True

    por lo general en el argumento del evento pasa el indice de la row que se esta trabajando


    saludos
    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    • Marcado como respuesta Pablo Rubio lunes, 12 de febrero de 2018 16:38
    martes, 12 de enero de 2010 19:24
  • Gracias man…

    Eres  un capo, funciona perfectamente…

    Muchas gracias viejo…..

    jueves, 14 de enero de 2010 10:54
  • hola buenas tardes 

    tengo un tremendo lió parecido

    necesito colocar el focus en determinada linea y columna del datagridview

    pero la coordenada deseo que sea ingresada por medio de un textbox... por ejemplo:

    de una lista de clientes del cual debo modificar la celda cuota solo de algunos no de todos,

    necesito colocar en el texbox el numero de cliente que desee modificar y automáticamente el focus se posicione en ese cliente

    pero en la celda cuota y después de modificara  el focus vuelva al text para seleccionar otro cliente 

    la celda siempre sera la misma

    les estaré muy agradecidos ... soy realmente nuevo en esto gracias por su ayuda

    ni siquiera se si estoy preguntado en el lugar correcto

    jueves, 3 de mayo de 2012 5:20

  • 0
    hola buenas tardes 

    tengo un tremendo lió parecido

    necesito colocar el focus en determinada linea y columna del datagridview

    pero la coordenada deseo que sea ingresada por medio de un textbox... por ejemplo:

    de una lista de clientes del cual debo modificar la celda cuota solo de algunos no de todos,

    necesito colocar en el texbox el numero de cliente que desee modificar y automáticamente el focus se posicione en ese cliente

    pero en la celda cuota y después de modificara  el focus vuelva al text para seleccionar otro cliente 

    la celda siempre sera la misma

    les estaré muy agradecidos ... soy realmente nuevo en esto gracias por su ayuda

    ni siquiera se si estoy preguntado en el lugar correcto
    jueves, 3 de mayo de 2012 5:21
  • Hola Leandro, utilice la línea de código en el datagridview1, pero solo me selecciona, la celda que quiero, pero el foco queda en la sgte igualmente, te dejo la imagen que grafica mejor mi conflicto, el problema en si es que quiero obviamente que la selección y el foco queden en la misma celda, puedes orientarme seria grandioso, muchas gracias...


    Felipe Soto


    lunes, 24 de abril de 2017 18:00
  • FOCUS LISTO PARA DIGITAR

    //PARA ESTO ANTES TENEMOS QUE IR A EVENTOS DEL GRID Y HABILITAR EL EVENTO CELLDOUBLE CLICK

    //ES ALGO TONTO PERO FUNCIONA

    // Este Codigo Puede ir Dentro de un Button 

    NOMBRE_GRID.CurrentCell =NOMBRE_GRID.Rows[numRows].Cells[numCell];           

    NOMBRE_GRID.BeginEdit(true); //ABRIR LA EDICION DE LA CELDA

    nombre_grid_CellDoubleClick(sender,newDataGridViewCellEventArgs(columnIndex,rowsIndex));

    • Marcado como respuesta Pablo Rubio lunes, 12 de febrero de 2018 16:38
    jueves, 8 de febrero de 2018 16:58
  • Leandro utilice tu codigo para C# que lo puse en esta forma, sin embargo me selecciona una fila lo que yo estoy buscando es que se seleccione una celda pero no se cual es la forma, tendras algun forma poner el foco en la misma celda, gracias por tu pronta respuesta. Me olvidaba estoy utilizando el evento KeyDown utilizando keys.Insert, para al momento de insetar una fila nueva me ponga en foco la celda correspondiente.

    int nRowIndex = GridViewFactBolet.Rows.Count - 1;
                    GridViewFactBolet.Rows[nRowIndex].Selected = true;
                    GridViewFactBolet.Rows[nRowIndex].Cells[2].Selected = true;   



    Boris travi Ing.Software


    • Editado Boris Travi martes, 30 de julio de 2019 20:16
    martes, 30 de julio de 2019 20:13