ErrorAddDataBoundRowEventArgs-Schnittstelle
Stellt Informationen für das ErrorAddDataBoundRow-Ereignis bereit.
Namespace: Microsoft.Office.Tools.Excel
Assembly: Microsoft.Office.Tools.Excel (in Microsoft.Office.Tools.Excel.dll)
Syntax
'Declaration
<GuidAttribute("eca34a5d-a43c-4be4-a24a-49d49ae4519b")> _
Public Interface ErrorAddDataBoundRowEventArgs
[GuidAttribute("eca34a5d-a43c-4be4-a24a-49d49ae4519b")]
public interface ErrorAddDataBoundRowEventArgs
Der ErrorAddDataBoundRowEventArgs-Typ macht die folgenden Member verfügbar.
Eigenschaften
Name | Beschreibung | |
---|---|---|
InnerException | Ruft die Exception-Instanz ab, die die aktuelle Ausnahme verursachte. | |
Item | Ruft das neue Element ab, das ListObject der Datenquelle hinzuzufügen versucht hat. | |
Retry | Ruft einen Wert ab, der angibt, ob das ListObject versuchen soll, das Element wieder hinzuzufügen, oder legt diesen fest. |
Zum Seitenanfang
Hinweise
Das ErrorAddDataBoundRow-Ereignis wird durch das ListObject-Steuerelement ausgelöst, wenn bei dem Versuch, einer an das ListObject gebundenen Datenquelle eine neue Zeile hinzuzufügen, eine Ausnahme ausgelöst wird.Die Item-Eigenschaft kann verwendet werden, um das neue Element anzurufen, das das ListObject versucht hat hinzuzufügen.Die InnerException-Eigenschaft stellt die ausgelöste Ausnahme bereit. Mit der Retry-Eigenschaft kann angegeben werden, ob nochmals versucht werden soll, die Zeile hinzuzufügen.
Beispiele
Im folgenden Codebeispiel werden eine DataTable und ein ListObject erstellt, und das ListObject wird an die DataTable gebunden.Anschließend wird ein ErrorAddDataBoundRow-Ereignishandler erstellt.Sie können das Ereignis testen, indem Sie dem ListObject manuell eine neue Zeile hinzufügen und den Nachnamen "Chan" sowie einen Vornamen eingeben.Der Ereignishandler zeigt eine Meldung an.
Dieses Beispiel bezieht sich auf eine Anpassung auf Dokumentebene.
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"], "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.");
}