ErrorAddDataBoundRowEventHandler-Delegat
Erstellen Sie eine Methode, die das ErrorAddDataBoundRow-Ereignis verarbeitet.
Namespace: Microsoft.Office.Tools.Excel
Assembly: Microsoft.Office.Tools.Excel (in Microsoft.Office.Tools.Excel.dll)
Syntax
'Declaration
Public Delegate Sub ErrorAddDataBoundRowEventHandler ( _
sender As Object, _
e As ErrorAddDataBoundRowEventArgs _
)
public delegate void ErrorAddDataBoundRowEventHandler(
Object sender,
ErrorAddDataBoundRowEventArgs e
)
Parameter
- sender
Typ: System.Object
Die Quelle des Ereignisses.
- e
Typ: Microsoft.Office.Tools.Excel.ErrorAddDataBoundRowEventArgs
Ein ErrorAddDataBoundRowEventArgs, das die Ereignisdaten enthält.
Hinweise
Beim Erstellen eines ErrorAddDataBoundRowEventHandler-Delegaten geben Sie die Methode für die Ereignisbehandlung an.Um das Ereignis mit dem Ereignishandler zu verknüpfen, fügen Sie dem Ereignis eine Instanz des Delegaten hinzu.Solange Sie den Delegaten nicht entfernen, wird der Ereignishandler immer dann aufgerufen, wenn das Ereignis auftritt.Weitere Informationen über Delegaten finden Sie unter Ereignisse und Delegaten.
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.");
}