다음을 통해 공유


ChangeType 열거형

ListObject 컨트롤에서 사용자가 변경한 데이터를 복원한 방식에 대한 정보를 제공합니다.

네임스페이스:  Microsoft.Office.Tools.Excel
어셈블리:  Microsoft.Office.Tools.Excel(Microsoft.Office.Tools.Excel.dll)

구문

‘선언
Public Enumeration ChangeType
public enum ChangeType

멤버

멤버 이름 설명
RangeValueRestored 범위의 값이 데이터 소스의 값으로 복원되었습니다.
ColumnAdded ListObject 컨트롤에 열이 추가되었습니다.
ColumnRemoved ListObject 컨트롤에서 열이 제거되었습니다.
RowAdded ListObject 컨트롤에 행이 추가되었습니다.
RowRemoved ListObject 컨트롤에서 행이 제거되었습니다.
ColumnHeaderRestored 열 머리글의 텍스트는 원래 값으로 복원되었습니다.

설명

ListObject 컨트롤이 데이터에 바인딩되어 있고 사용자가 허용되지 않는 작업을 수행할 때 ListObject 컨트롤은 자동으로 이전 상태로 복원되고 OriginalDataRestored 이벤트가 발생합니다. ChangeType 열거형에서는 발생한 복원의 종류에 대한 정보를 제공합니다.

예제

다음 코드 예제에서는 DataTableListObject를 만들고 DataTableListObject를 바인딩합니다. 그런 다음 OriginalDataRestored 이벤트 처리기를 만듭니다. 이 이벤트를 테스트하려면 시트 1에서 ListObject 위의 열 문자를 마우스 오른쪽 단추로 클릭한 다음 바로 가기 메뉴에서 삭제를 클릭합니다. 이벤트 처리기는 열 및 열 머리글 데이터를 대체한 다음 복원된 데이터의 종류와 원래 데이터의 복원 이유를 알려 주는 메시지를 표시합니다.

이 예제는 문서 수준 사용자 지정을 위한 것입니다.

    WithEvents OriginalDataRestoredList As _
        Microsoft.Office.Tools.Excel.ListObject
    Private Sub ListObject_OriginalDataRestored()
        ' 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"))

        ' Add two new rows to the DataTable.
        Dim dr1 As DataRow = dt.NewRow()
        dr1("LastName") = "Chan"
        dr1("FirstName") = "Gareth"
        dt.Rows.Add(dr1)
        Dim dr2 As DataRow = dt.NewRow()
        dr2("LastName") = "Nitsche"
        dr2("FirstName") = "Sonja"
        dt.Rows.Add(dr2)

        ' Create a list object.
        OriginalDataRestoredList = Me.Controls.AddListObject( _
            Me.Range("A1"), "OriginalDataRestoredList")

        ' Bind the list object to the DataTable.
        OriginalDataRestoredList.AutoSetDataBoundColumnHeaders = True
        OriginalDataRestoredList.SetDataBinding(ds, "Customers", _
            "LastName", "FirstName")
    End Sub

    Private Sub List1_OriginalDataRestored(ByVal sender As Object, _
        ByVal e As Microsoft.Office.Tools.Excel.OriginalDataRestoredEventArgs) _
        Handles OriginalDataRestoredList.OriginalDataRestored
        MessageBox.Show("This data is bound to a data source and " & _
        "will be restored. This change is: " & e.ChangeType.ToString() & _
        ". The reason is: " & e.ChangeReason.ToString() + ".")
    End Sub

private void ListObject_OriginalDataRestored()
{
    // 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"));

    // Add two new rows to the DataTable.
    DataRow dr1 = dt.NewRow();
    dr1["LastName"] = "Chan";
    dr1["FirstName"] = "Gareth";
    dt.Rows.Add(dr1);
    DataRow dr2 = dt.NewRow();
    dr2["LastName"] = "Nitsche";
    dr2["FirstName"] = "Sonja";
    dt.Rows.Add(dr2);

    // 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.OriginalDataRestored += new 
        Microsoft.Office.Tools.Excel.
        OriginalDataRestoredEventHandler(list1_OriginalDataRestored);
}

void list1_OriginalDataRestored(object sender, 
    Microsoft.Office.Tools.Excel.OriginalDataRestoredEventArgs e)
{
    MessageBox.Show("This data is bound to a data source and " +
    "will be restored. This change is: " + e.ChangeType.ToString() +
    ". The reason is: " + e.ChangeReason.ToString() + ".");
}

참고 항목

참조

Microsoft.Office.Tools.Excel 네임스페이스