مشاركة عبر


ListObject.ErrorAddDataBoundRow الحدث

يحدث عندما يحاول مستخدم تمت الإضافة صف إلى على حدود بيانات ListObjectعنصر تحكم، ولكن لا يمكن تمت الإضافة الصف.

مساحة الاسم:  Microsoft.Office.Tools.Excel
التجميع:  Microsoft.Office.Tools.Excel (في Microsoft.Office.Tools.Excel.dll)

بناء الجملة

'إقرار
Event ErrorAddDataBoundRow As ErrorAddDataBoundRowEventHandler
event ErrorAddDataBoundRowEventHandler ErrorAddDataBoundRow

ملاحظات

Th هو حدث هو raهوed إلا إذا ListObjectعنصر التحكم هو مرتبط بالبيانات.

التعامل مع هذا حدث لمحاولة تصحيح الأخطاء المحتملة.

أمثلة

إنشاء مثال التعليمة البرمجية التالية على DataTableو ListObject، وربطها ListObjectإلى DataTable. ثم إنشاء عنصر ErrorAddDataBoundRowمعالج حدث. لاختبار حدث، يدوياً إضافة صف جديد إلى ListObjectوادخل "Chan" اسم العائلة والاسم أول. معالج الأحداث بعرض رسالة.

Th هو الإصدار هو لتخصيص المستوى مستند.

    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.");
}

Th هو الإصدار هو للوظيفة الإضافية المستوى تطبيق. إلى استخدم هذا المثال تعليمات برمجية، قم بإضافة using System.Data;التوجيه إذا كنت تستخدم C# أو Imports System.Dataالعبارة إذا كنت تستخدم Visual أساسى.

WithEvents ErrorAddDataBoundRowList As 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.
    Dim NativeWorksheet As Microsoft.Office.Interop.Excel.Worksheet =
        Me.Application.Worksheets(1)
    Dim vstoWorksheet As Microsoft.Office.Tools.Excel.Worksheet =
            Globals.Factory.GetVstoObject(NativeWorksheet)
    ErrorAddDataBoundRowList = _
        vstoWorksheet.Controls.AddListObject(vstoWorksheet.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
    System.Windows.Forms.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.
    Worksheet vstoWorksheet =
        Globals.Factory.GetVstoObject(this.Application.ActiveWorkbook.Worksheets[1]);
    ListObject list1 =
        vstoWorksheet.Controls.AddListObject(
        vstoWorksheet.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
        ErrorAddDataBoundRowEventHandler(list1_ErrorAddDataBoundRow);
}

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

أمن NET Framework.

راجع أيضًَا

المرجع

ListObject واجهة

ListObject الأعضاء

Microsoft.Office.Tools.Excel مساحة الاسم