ErrorAddDataBoundRowEventArgs - интерфейс
Предоставляет сведения для события ErrorAddDataBoundRow.
Пространство имен: Microsoft.Office.Tools.Excel
Сборка: Microsoft.Office.Tools.Excel (в Microsoft.Office.Tools.Excel.dll)
Синтаксис
'Декларация
<GuidAttribute("eca34a5d-a43c-4be4-a24a-49d49ae4519b")> _
Public Interface ErrorAddDataBoundRowEventArgs
[GuidAttribute("eca34a5d-a43c-4be4-a24a-49d49ae4519b")]
public interface ErrorAddDataBoundRowEventArgs
Тип ErrorAddDataBoundRowEventArgs предоставляет следующие члены.
Свойства
Имя | Описание | |
---|---|---|
InnerException | Возвращает экземпляр объекта Exception, который вызвал текущее исключение. | |
Item | Получает новый элемент, попытка добавления которого в источник данных была предпринята элементом управления ListObject. | |
Retry | Возвращает или задает значение, указывающее, должен ли элемент управления ListObject повторить попытку добавить элемент. |
В начало страницы
Заметки
Событие ErrorAddDataBoundRow вызывается элементом управления ListObject, если возникает исключение при попытке добавить новую строку в привязку источника данных в элементе управления ListObject. Свойство Item может использоваться для получения нового пункта, который попытается добавить ListObject. Свойство InnerException предоставляет вызванное исключение; к свойству Retry можно обратиться для указания необходимости другой попытки добавления этой строки.
Примеры
В следующем примере кода создаются объекты DataTable и ListObject, после чего элемент управления ListObject связывается с DataTable. Затем он создает обработчик событий ErrorAddDataBoundRow. Чтобы протестировать событие, необходимо вручную добавить новую строку в элемент управления ListObject и ввести фамилию Chan и имя. Обработчик событий выведет сообщение.
В этом примере демонстрируется настройка уровня документа.
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.");
}