ErrorAddDataBoundRowEventArgs (Interfaz)

Proporciona información para el evento ErrorAddDataBoundRow.

Espacio de nombres:  Microsoft.Office.Tools.Excel
Ensamblado:  Microsoft.Office.Tools.Excel (en Microsoft.Office.Tools.Excel.dll)

Sintaxis

'Declaración
<GuidAttribute("eca34a5d-a43c-4be4-a24a-49d49ae4519b")> _
Public Interface ErrorAddDataBoundRowEventArgs
[GuidAttribute("eca34a5d-a43c-4be4-a24a-49d49ae4519b")]
public interface ErrorAddDataBoundRowEventArgs

El tipo ErrorAddDataBoundRowEventArgs expone los siguientes miembros.

Propiedades

  Nombre Descripción
Propiedad pública InnerException Obtiene la instancia Exception que produjo la excepción actual.
Propiedad pública Item Obtiene el nuevo elemento que el objeto ListObject intentó agregar al origen de datos.
Propiedad pública Retry Obtiene o establece un valor que indica si el objeto ListObject debe intentar agregar de nuevo el elemento.

Arriba

Comentarios

El control ListObject provoca el evento ErrorAddDataBoundRow si se produce una excepción durante un intento para agregar una nueva fila al origen de datos enlazado al objeto ListObject. La propiedad Item se puede usar para obtener el elemento nuevo que intentó agregar ListObject. La propiedad InnerException proporciona la excepción que se produjo y la propiedad Retry se puede usar para indicar si se debe realizar otro intento para agregar esta fila.

Ejemplos

El ejemplo de código siguiente crea DataTable y ListObject, y enlaza el control ListObject al control DataTable. A continuación, crea un controlador del evento ErrorAddDataBoundRow. Para probar el evento, agregue manualmente una nueva fila al objeto ListObject y escriba el apellido "Chan" y un nombre. El controlador de eventos muestra un mensaje.

Se trata de un ejemplo para una personalización en el nivel del documento.

    WithEvents ErrorAddDataBoundRowList As _
        Microsoft.Office.Tools.Excel.ListObject
    Private Sub ListObject_ErrorAddDataBoundRow()
        ' Create a new DataSet and DataTable.
        Dim ds As New DataSet()
        Dim dt As DataTable = ds.Tables.Add("Customers")
        Dim lastName As New DataColumn("LastName")
        dt.Columns.Add(lastName)
        dt.Columns.Add(New DataColumn("FirstName"))

        Dim myUC As New UniqueConstraint("CustConstraint", _
            lastName)
        dt.Constraints.Add(myUC)

        ' Add a new row to the DataTable.
        Dim dr As DataRow = dt.NewRow()
        dr("LastName") = "Chan"
        dr("FirstName") = "Gareth"
        dt.Rows.Add(dr)

        ' Create a list object.
        ErrorAddDataBoundRowList = _
            Me.Controls.AddListObject(Me.Range("A1"), _
            "ErrorAddDataBoundRowList")

        ' Bind the list object to the DataTable.
        ErrorAddDataBoundRowList.AutoSetDataBoundColumnHeaders = True
        ErrorAddDataBoundRowList.SetDataBinding(ds, "Customers", _
            "LastName", "FirstName")
    End Sub


    Private Sub List1_ErrorAddDataBoundRow(ByVal sender As Object, _
        ByVal e As Microsoft.Office.Tools.Excel.ErrorAddDataBoundRowEventArgs) _
        Handles ErrorAddDataBoundRowList.ErrorAddDataBoundRow
        MessageBox.Show("Last names must be unique.")

    End Sub

private void ListObject_ErrorAddDataBoundRow()
{
    // Create a new DataSet and DataTable.
    DataSet ds = new DataSet();
    DataTable dt = ds.Tables.Add("Customers");
    DataColumn lastName = new DataColumn("LastName");
    dt.Columns.Add(lastName);
    dt.Columns.Add(new DataColumn("FirstName"));

    UniqueConstraint myUC = new UniqueConstraint( "CustConstraint", 
        lastName);
    dt.Constraints.Add(myUC);

    // Add a new row to the DataTable.
    DataRow dr = dt.NewRow();
    dr["LastName"] = "Chan";
    dr["FirstName"] = "Gareth";
    dt.Rows.Add(dr);

    // Create a list object.
    Microsoft.Office.Tools.Excel.ListObject list1 = 
        this.Controls.AddListObject(
        this.Range["A1", missing], "list1");

    // Bind the list object to the DataTable.
    list1.AutoSetDataBoundColumnHeaders = true;
    list1.SetDataBinding(ds, "Customers", "LastName",
        "FirstName");

    // Create the event handler.
    list1.ErrorAddDataBoundRow += new 
        Microsoft.Office.Tools.Excel.
        ErrorAddDataBoundRowEventHandler(list1_ErrorAddDataBoundRow);
}

void list1_ErrorAddDataBoundRow(object sender, 
    Microsoft.Office.Tools.Excel.ErrorAddDataBoundRowEventArgs e)
{
    MessageBox.Show("Last names must be unique.");
}

Vea también

Referencia

Microsoft.Office.Tools.Excel (Espacio de nombres)