Поделиться через


ListObject.SetDataBinding - метод (Object, String, array<String[])

Привязывает элемент управления ListObject к заданному элементу данных источника данных, и показывает только заданные столбцы этого элемента данных.

Пространство имен:  Microsoft.Office.Tools.Excel
Сборка:  Microsoft.Office.Tools.Excel (в Microsoft.Office.Tools.Excel.dll)

Синтаксис

'Декларация
Sub SetDataBinding ( _
    dataSource As Object, _
    dataMember As String, _
    ParamArray mappedColumns As String() _
)
void SetDataBinding(
    Object dataSource,
    string dataMember,
    params string[] mappedColumns
)

Параметры

  • dataSource
    Тип: System.Object
    Объект, который требуется использовать в качестве источника данных для элемента управления ListObject.
  • dataMember
    Тип: System.String
    Элемент DataMember, задающий свойство для привязки в объекте, возвращаемом объектом DataSource.
  • mappedColumns
    Тип: array<System.String[]
    Имена столбцов в элементе данных, которые необходимо отобразить в элементе управления ListObject.Чтобы добавить не сопоставленный столбец, включите в массив пустую строку.

Исключения

Исключение Условие
SetDataBindingFailedException

Не удалось выполнить привязку к указанному источнику данных.

ArgumentException

Один или несколько аргументов являются недопустимыми.

ArgumentNullException

Аргумент dataSource равен пустой ссылке (nullпустая ссылка (Nothing в Visual Basic)).

Заметки

Параметром dataSource может быть любой объект, реализующий IList, IListSource, IBindingList или IEnumerable.

Параметром dataMember должно быть свойство источника данных, который возвращает коллекцию, которая может быть связана. Например, источник DataSet имеет таблицы как элементы данных.

Примеры

В следующем примере кода создаются DataSet, DataTable и ListObject. Затем выполняется привязка объекта ListObject к DataSet и к DataTable, но включается только один из двух возможных столбцов таблицы в ListObject.

В этом примере демонстрируется настройка уровня документа.

    Private Sub ListObject_SetDataBinding3()
        Dim Ages As Integer() = {32, 44, 28, 61}
        Dim Names As String() = {"Reggie", "Sally", _
            "Henry", "Christine"}

        ' Create a data table with two columns.
        Dim ds As New DataSet()
        Dim table As DataTable = ds.Tables.Add("Customers")
        Dim column1 As New DataColumn("Names", GetType(String))
        Dim column2 As New DataColumn("Ages", GetType(Integer))
        table.Columns.Add(column1)
        table.Columns.Add(column2)

        ' Add the four rows of data to the table.
        Dim row As DataRow
        Dim i As Integer
        For i = 0 To 3
            row = table.NewRow()
            row("Names") = Names(i)
            row("Ages") = Ages(i)
            table.Rows.Add(row)
        Next i

        ' Create the list object.
        Dim List1 As Microsoft.Office.Tools.Excel.ListObject = _
            Me.Controls.AddListObject(Me.Range("A1", "B4"), "List1")

        ' Bind the list object to the table.
        Dim mappedColumn As String() = {"Names"}
        List1.SetDataBinding(ds, "Customers", mappedColumn)

    End Sub

private void ListObject_SetDataBinding3()
{
    int[] Ages = { 32, 44, 28, 61 };
    string[] Names = { "Reggie", "Sally", "Henry", "Christine" };

    // Create a data table with two columns.
    DataSet ds = new DataSet();
    DataTable table = ds.Tables.Add("Customers");
    DataColumn column1 = new DataColumn("Names", typeof(string));
    DataColumn column2 = new DataColumn("Ages", typeof(int));
    table.Columns.Add(column1);
    table.Columns.Add(column2);

    // Add the four rows of data to the table.
    DataRow row;
    for (int i = 0; i < 4; i++)
    {
        row = table.NewRow();
        row["Names"] = Names[i];
        row["Ages"] = Ages[i];
        table.Rows.Add(row);
    }

    Microsoft.Office.Tools.Excel.ListObject list1 =
        this.Controls.AddListObject(this.Range["A1", "B4"], "list1");

    // Bind the list object to the table.
    string[] mappedColumn = { "Names" };
    list1.SetDataBinding(ds, "Customers", mappedColumn);
}

Безопасность платформы .NET Framework

См. также

Ссылки

ListObject Интерфейс

SetDataBinding - перегрузка

Microsoft.Office.Tools.Excel - пространство имен