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


ListObject.SetDataBinding Метод (Object, String, array<String[]) (2007 System)

Обновлен: Ноябрь 2007

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

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

Синтаксис

'Декларация
Public Sub SetDataBinding ( _
    dataSource As Object, _
    dataMember As String, _
    ParamArray mappedColumns As String() _
)
'Применение
Dim instance As ListObject
Dim dataSource As Object
Dim dataMember As String
Dim mappedColumns As String()

instance.SetDataBinding(dataSource, dataMember, _
    mappedColumns)
public 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ссылка 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);
}

Разрешения

См. также

Ссылки

ListObject Класс

ListObject - члены

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

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