Debes estar agregando la información así:
En Evento1:
GRID[i,i].Value="evento1";
i=i+1;
En Evento2:
GRID[i,i].Value="evento2";
i=i+1;
O algo similar. Las celdas de la grilla (en C# y muy seguramente en los otros lenguajes de la plataforma .NET) tienen la siguiente referencia: GRID[columna, fila], por lo que deberías hacer algo así (te doy el código en C#) teniendo en cuenta que 'i' es el número de columna y 'j' el número de fila iniciando ambas en cero:
Código C#:
Ver originalEventoX()
{
if (i<Grilla.Columns.Count) //si aún hay celdas pendientes en la fila actual
Grilla[i,j].Value="Algun texto";
else // esto es en caso que acabe la fila y que pase a la siguiente
{
i=0; //primera columna
j++; // equivale a j=j+1 esto es para ir a la siguiente fila
if (j<Grilla.Rows.Count)
Grilla[i,j].Value="Algun texto";
else
MessageBox.Show("No hay más filas","Error");
}
i++; //es lo mismo que decir i=i+1, esto es para incrementar de columna
}
El código que he dado controla desbordamientos de filas y columnas y lo podrías poner en cualquier evento. Por favor me comentas cualquier situación.
Saludos.