Excepciones de copia de datagridview al portapapeles

Estoy tratando de copiar una cantidad bastante grande de datos (~ 50,000 filas, 200 columnas de dobles) desde una vista de cuadrícula de datos al portapapeles. Para hacer esto, estoy seleccionando todas las celdas y presionando Ctrl + C, momento en el que creo que datagridview maneja la copia interna del portapapeles. El programa se detiene durante varios segundos y luego muestra el mensaje críptico...

"El argumento 'Prompt' no se puede convertir al tipo 'String'".

... entonces el programa se cierra.

He copiado de datagridview al portapapeles toneladas de veces en el pasado, pero nunca tantas celdas. Independientemente, no creo que esta sea una cantidad excesiva de datos para las computadoras de hoy.

Esto es parte de la depuración de un problema más grande, donde escribí una rutina que copia una vista de cuadrícula de datos completa en el portapapeles, abre un nuevo libro de Excel y vuelca a Excel. Si ejecuto esa rutina para esta vista de cuadrícula de datos en particular, obtengo una excepción System.OutofMemory.

preguntado el 22 de mayo de 12 a las 15:05

1 Respuestas

Tal vez me apresuré a decir que 50 200 filas + XNUMX columnas eran una cantidad manejable para el portapapeles. Ese juicio provino en parte de la capacidad de copiar y pegar cantidades similares en Excel, pero después de un examen más detallado, no estoy seguro exactamente si/cuándo/cómo Excel hace uso del portapapeles. Entonces, tal vez estoy excediendo las demandas razonables de memoria... He cambiado a un enfoque gradual.

contestado el 23 de mayo de 12 a las 14:05

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.