Quantcast
Channel: Visual C# forum
Viewing all articles
Browse latest Browse all 31927

Referencia a objeto no establecida como instancia de un objeto.

$
0
0

Saludos amigos, estoy haaciendo un gridview en el que pueda actuallizar varias filas de una vez.

para ello he puesto un boton en que he puesto el siguiente codigo:

    private bool tableCopied = false;
    private DataTable originalDataTable;

    protected void GridView1_RowDataBound1(object sender, GridViewRowEventArgs e)
    {
        if (e.Row.RowType == DataControlRowType.DataRow)
            if (!tableCopied)
            {
                originalDataTable = ((DataRowView)e.Row.DataItem).Row.Table.Copy();
                ViewState["originalValuesDataTable"] = originalDataTable;
                tableCopied = true;
            }
    }


    protected void btnActualizar_Click(object sender, EventArgs e)
    {
        originalDataTable = (DataTable)ViewState["originalValuesDataTable"];

    foreach (GridViewRow r in GridView1.Rows)
        if (IsRowModified(r)) { GridView1.UpdateRow(r.RowIndex, false); }

    // Rebind the Grid to repopulate the original values table.
    tableCopied = false;
    GridView1.DataBind();
}

protected bool IsRowModified(GridViewRow r)
{
    int ID;
    string valor;

    ID = Convert.ToInt32(GridView1.DataKeys[r.RowIndex].Value);

    valor = ((TextBox)r.FindControl("txtValor")).Text;
    //currentFirstName = ((TextBox)r.FindControl("FirstNameTextBox")).Text;


    DataRow row = originalDataTable.Select(String.Format("Id_Hardware = {0}", ID))[0];

    if (!valor.Equals(row["Descripcion"].ToString())) { return true; }
    //if (!currentFirstName.Equals(row["FirstName"].ToString())) { return true; }

    return false;
    }

(ESTO LO APRENDI DE UN TUTORIAL)

El problema que tengo es el siguiente:

cuando en el gridview muestro datos de un siple select, me funciona perfectamte, pero cuando el grid muestra datos de un select con joins me tira el error "

Referencia a objeto no establecida como instancia de un objeto."..

y la veradad ya no se que hacer, he probado de varias formas..

espero alguien me pueda ayudar..

Saludos..!!


Viewing all articles
Browse latest Browse all 31927

Trending Articles