A quien pueda interesar, he buscado una cantidad considerable de tiempo, para trabajar de una forma de salir de este errorerror: Suprimido información de la fila no se puede acceder a través de la fila
"Deleted row information cannot be accessed through the row"
entiendo que una vez que una fila se ha eliminado de una tabla de datos a la que no se puede acceder de forma típica y esta es la razón por la que recibo este error. El gran problema es que no estoy seguro de qué hacer para obtener el resultado deseado, que describiré a continuación.
Básicamente cuando se elimina una fila en "dg1", la fila debajo de ella ocupa el lugar de la fila eliminada (obviamente) y así hereda el índice de filas eliminadas. El propósito de este método es reemplazar y restablecer el índice de filas (al tomarlo del valor correspondiente en el conjunto de datos) que tomó las filas eliminadas y, como tal, el valor del índice.
Ahora mismo estoy usando una etiqueta (lblText) para intentar obtener una respuesta del proceso, pero se bloquea cuando la última instrucción anidada intenta comparar valores.
Aquí está el código:
void dg1_Click(object sender, EventArgs e)
{
rowIndex = dg1.CurrentRow.Index; //gets the current rows
string value = Convert.ToString(dg1.Rows[rowIndex].Cells[0].Value);
if (ds.Tables[0].Rows[rowIndex].RowState.ToString() == "Deleted")
{
for (int i = 0; i < dg1.Rows.Count; i++)
{
if (Convert.ToString(ds.Tables[0].Rows[i][0].ToString()) == value)
//^**where the error is occurring**
{
lblTest.Text = "Aha!";
//when working, will place index of compared dataset value into rowState, which is displaying the current index of the row I am focussed on in 'dg1'
}
}
}
Gracias de antemano por la ayuda, realmente hice de búsqueda, y si es fácil de averiguar a través de una simple búsqueda en Google y luego permitir que me odian repetible en mí porque lo intenté
- gc
¿Por qué usas 'Convert.ToString' cuando ya has usado' .ToString() '? Esto parece redundante. –
@druciferre - Estoy de acuerdo que es redundante. Copié el código original del OP y lo modifiqué para usar el valor original del DataRow. – firedfly