none
actualizar datagrid sin que se me regrese a la primera fila (tiempo de ejecucion) RRS feed

  • Pregunta

  • hola, un saludo mi problema es el siguiente:

    tengo un datagrid cargado por un adapter, hasta alli todo bien, ese datagrid se enlaza a mi tabla y si esa tabla sufre altas,bajas o cambios, mi datagrid debe poder reflejarlos "en tiempo real", ahora lo estoy haciendo con un timer, pero cuando el timer empieza a funcionar siempre me regresa "el foco" a la primera fila y (como se esta ejecutando el timer y actualizando) no me deja bajar a mis demas filas, alguna propuesta o sugerencia compañeros?

    trabajo con :

    c#, visual studio 2008, sql server 2008


    si mi respuesta te ayudo votala como util, si resolvio tu duda marcala como respuesta, de esta manera ayudas a otros compañeros que tengan dudas similares.

    jueves, 25 de octubre de 2012 19:48

Todas las respuestas

  • Pero una pregunta cual es la necesidad de utilizar un timer ?, lo utilizas para otra operación que no mencionas ?


    Si mi respuesta te ha ayudado a resolver tus problemas, Selecciona "Proponer como respuesta"

    Blog
    J.Joaquin

    jueves, 25 de octubre de 2012 19:56
  • egresa "el foco" a la primera fila y (como se esta ejecutando el timer y actualizando) no me deja bajar a mis demas filas,

    pero no seria mejor dar funcionalidad para que se detenga el timer si se esta interactuando con el grid?

    podrias antes de lanzar el timer tomar el index de la row que esta seleccionada, luego que se actualice y se use

    DataGridView.FirstDisplayedScrollingRowIndex Property

    para que se realice un scroll y se vaya de forma automatica a la fila que se estaba antes de recargar

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina

    jueves, 25 de octubre de 2012 20:35
  • hola J.Joaquin, asi lo estoy actualizando, si tienes una opcion mejor bienvenida sea :) espero tu respuesta saludos

    si mi respuesta te ayudo votala como util, si resolvio tu duda marcala como respuesta, de esta manera ayudas a otros compañeros que tengan dudas similares.

    jueves, 25 de octubre de 2012 22:43
  • hola, leandro de hecho ya intente eso que mencionas y "funciona" el problema es cuando por ejemplo tengo 100 registros tengo que usar el scroll del datagrid para desplazarme a las demas filas, el problema es que siempre se queda tomando el valor de index que le mando D:,

    no se si me explique, cuando selecciono un index por decir de mi fila 5, pero quiero ir a la fila 90 doy clic en el scroll para desplazarme y no me deja precisamente por que el datagrid sigue tomando el valor del index (5), estoy abierto a sugerencia pero nesesito que mi datagrid se actualize en "tiempo real" y no se pierda el foco al momento de que se este actualizando con el "tiempo real", saludos


    si mi respuesta te ayudo votala como util, si resolvio tu duda marcala como respuesta, de esta manera ayudas a otros compañeros que tengan dudas similares.

    jueves, 25 de octubre de 2012 22:47
  • Mi respuesta es para que utilizar un timer si lo que necesitas es cargar tus datos en tu datagridview para que complicarte si mayormente en las aplicaciones de escritorio esto no se utiliza al menos que quieras poner un reloj, y si quieres que tu datagrid se actualice utiliza en el boton actualizar el mismo metodo que utilzas para cargarlo y listo.

    Espero que te sirva de ayuda.


    Si mi respuesta te ha ayudado a resolver tus problemas, Selecciona "Proponer como respuesta"

    Blog
    J.Joaquin

    jueves, 25 de octubre de 2012 23:28
  • ¿Novato, no le había respondido yo esta pregunta hace un par de semanas?  La solución es una capa de negocio con INotifyPropertyChanged y la actualización en el timer no debe destruir la colección sino más bien actualizar su contenido uno a uno.

    Jose R. MCP
    Code Samples

    viernes, 26 de octubre de 2012 0:47
    Moderador
  • perdon por no contestar no habia visto la respuesta, en efecto webjose me lo dijiste pero empeze a investigar sobre el tema y me parecio un poco complicado, y estoy con la presion del tiempo terrible, lo que hice fue recorrer mi datagrid y compararlo con mi datatable, y en efecto "hace el tiempo real" pero siento que y se que no es la solucion mas optima, saludos

    si mi respuesta te ayudo votala como util, si resolvio tu duda marcala como respuesta, de esta manera ayudas a otros compañeros que tengan dudas similares.

    miércoles, 31 de octubre de 2012 15:13