Export (0) Print
Expand All

BeforeAddDataBoundRowEventArgs Interface

Provides data for the BeforeAddDataBoundRow event.

Namespace:  Microsoft.Office.Tools.Excel
Assembly:  Microsoft.Office.Tools.Excel (in Microsoft.Office.Tools.Excel.dll)

[GuidAttribute("15ffd73e-605e-4d8a-8426-4ddbb71a62f1")]
public interface BeforeAddDataBoundRowEventArgs

The BeforeAddDataBoundRowEventArgs type exposes the following members.

  NameDescription
Public propertyCancelGets or sets a value indicating whether the addition of a new row should be canceled.
Public propertyItemGets the row to be added to the data source.
Top

The BeforeAddDataBoundRow event occurs before a new row is added to a data source that is bound to a ListObject.

The following code example creates a DataTable and a ListObject, and binds the ListObject to the DataTable. It then creates a BeforeAddDataBoundRow event handler that cancels the addition of the new row. To test the event, manually add a new row to the ListObject on sheet 1.

This example is for a document-level customization.

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

    // 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"], "list1");

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

    // Create the event handler.
    list1.BeforeAddDataBoundRow += new 
        Microsoft.Office.Tools.Excel.
        BeforeAddDataBoundRowEventHandler(
        list1_BeforeAddDataBoundRow);
}

void list1_BeforeAddDataBoundRow(object sender, 
    Microsoft.Office.Tools.Excel.BeforeAddDataBoundRowEventArgs e)
{
    e.Cancel = true;
    MessageBox.Show("This data is read-only.");
}
Show:
© 2015 Microsoft