다음을 통해 공유


정렬 순서를 사용하여 단추 이벤트 프로그래밍

이 절차에서는 이벤트 메서드 내에서 보고서의 ReportDocument 개체 모델을 프로그래밍하고, 한 이벤트 메서드에서는 정렬 순서를 오름차순으로 설정하고 다른 이벤트 메서드에서는 내림차순으로 설정합니다.

sortOrderDescending_Click 이벤트 메서드에서 보고서의 ReportDocument 개체 모델을 프로그래밍하려면

  1. 코드 숨김 클래스를 열고 sortOrderDescending_Click() 이벤트 메서드를 찾습니다.

  2. 이벤트 메서드 내에서 보고서 인스턴스의 DataDefinition 속성으로부터 SortFields 속성을 검색하여 인덱싱된 SortFields 클래스의 인스턴스에 할당합니다.

    Dim mySortFields As SortFields = hierarchicalGroupingReport.DataDefinition.SortFields
    
    SortFields sortFields = hierarchicalGroupingReport.DataDefinition.SortFields;
    
  3. 인덱싱된 SortFields 클래스에서 첫 번째 SortField 인스턴스를 검색하여 firstSortField라는 변수에 할당합니다.

<table>
<colgroup>
<col style="width: 100%" />
</colgroup>
<thead>
<tr class="header">
<th><img src="images\e2c9s1d7.alert_note(ko-kr,VS.90).gif" alt="Note" class="note" />참고</th>
</tr>
</thead>
<tbody>
<tr class="odd">
<td><p>인덱싱된 SortFields 클래스는 0부터 시작합니다.</p></td>
</tr>
</tbody>
</table>

``` vb
Dim firstSortField As SortField = mySortFields(0)
```

``` csharp
SortField firstSortField = sortFields[0];
```
  1. SortDirection 열거형의 DescendingOrder 선택 항목을 사용하여 firstSortField의 SortDirection 속성을 내림차순으로 설정합니다.

    firstSortField.SortDirection = SortDirection.DescendingOrder
    
    firstSortField.SortDirection = SortDirection.DescendingOrder;
    
  2. ReportDocument 개체 모델에서 수정된 정렬 순서를 사용하여 이 보고서를 CrystalReportViewer 컨트롤의 ReportSource 속성으로 다시 할당합니다.

    myCrystalReportViewer.ReportSource = hierarchicalGroupingReport
    
    crystalReportViewer.ReportSource = hierarchicalGroupingReport;
    

그런 다음 sortOrderAscending_Click() 이벤트 메서드에 대한 코드를 입력합니다. SortDirection 속성 설정만 제외하고는 이 절차의 코드와 동일합니다.

sortOrderAscending_Click 이벤트 메서드에서 보고서의 ReportDocument 개체 모델을 프로그래밍하려면

  1. 코드 숨김 클래스를 열고 sortOrderAscending_Click() 이벤트 메서드를 찾습니다.

  2. 이벤트 메서드 내에서 보고서 인스턴스의 DataDefinition 속성으로부터 SortFields 속성을 검색하여 인덱싱된 SortFields 클래스의 인스턴스에 할당합니다.

    Dim mySortFields As SortFields = hierarchicalGroupingReport.DataDefinition.SortFields
    
    SortFields sortFields = hierarchicalGroupingReport.DataDefinition.SortFields;
    
  3. 인덱싱된 SortFields 클래스에서 첫 번째 SortField 인스턴스를 검색하여 firstSortField라는 변수에 할당합니다.

<table>
<colgroup>
<col style="width: 100%" />
</colgroup>
<thead>
<tr class="header">
<th><img src="images\e2c9s1d7.alert_note(ko-kr,VS.90).gif" alt="Note" class="note" />참고</th>
</tr>
</thead>
<tbody>
<tr class="odd">
<td><p>인덱싱된 SortFields 클래스는 0부터 시작합니다.</p></td>
</tr>
</tbody>
</table>

``` vb
Dim firstSortField As SortField = mySortFields(0)
```

``` csharp
SortField firstSortField = sortFields[0];
```
  1. SortDirection 열거형의 AscendingOrder 선택 항목을 사용하여 firstSortField 인스턴스의 SortDirection 속성을 오름차순으로 설정합니다.

    firstSortField.SortDirection = SortDirection.AscendingOrder
    
    firstSortField.SortDirection = SortDirection.AscendingOrder;
    
  2. ReportDocument 개체 모델에서 수정된 정렬 순서를 사용하여 이 보고서를 CrystalReportViewer 컨트롤의 ReportSource 속성으로 다시 할당합니다.

    myCrystalReportViewer.ReportSource = hierarchicalGroupingReport
    
    crystalReportViewer.ReportSource = hierarchicalGroupingReport;
    

이제 각 이벤트 메서드 내에서 보고서의 ReportDocument 개체 모델에 대한 프로그래밍이 완료되었습니다. 다음 부분에서는 변경된 정렬 순서가 제대로 반영되는지, Session을 적용하지 않은 경우 이 정렬 순서가 유지되는지 테스트합니다.