다음을 통해 공유


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
)

매개 변수

  • mappedColumns
    형식: array<System.String[]
    ListObject 컨트롤에 표시할 데이터 멤버의 열 이름입니다.매핑되지 않은 열을 추가하려면 배열에 빈 문자열을 포함합니다.

예외

예외 상황
SetDataBindingFailedException

지정된 데이터 소스에 바인딩할 수 없습니다.

ArgumentException

하나 이상의 인수가 잘못되었습니다.

ArgumentNullException

dataSource 인수가 nullNull 참조(Visual Basic의 경우 Nothing)인 경우

설명

dataSource 매개 변수는 IList, IListSource, IBindingList 또는 IEnumerable을 구현하는 개체일 수 있습니다.

dataMember 매개 변수는 바인딩할 수 있는 컬렉션을 반환하는 데이터 소스의 속성이어야 합니다. 예를 들어, DataSet 소스에는 데이터 멤버로 테이블이 포함되어 있습니다.

예제

다음 코드 예제에서는 DataSet, DataTableListObject를 만듭니다. 그런 다음 ListObjectDataSetDataTable에 바인딩하지만 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 네임스페이스