Programmieren von Schaltflächenereignissen mit Sortierreihenfolgen

In diesem Verfahren programmieren Sie das ReportDocument-Objektmodell des Berichts innerhalb der Ereignismethode und legen für eine Ereignismethode eine aufsteigende Sortierreihenfolge und für die andere Ereignismethode eine absteigende Sortierreihenfolge fest.

So programmieren Sie das ReportDocument-Objektmodell des Berichts in der sortOrderDescending_Click-Ereignismethode

  1. Öffnen Sie die CodeBehind-Klasse, und suchen Sie die sortOrderDescending_Click()-Ereignismethode.

  2. Rufen Sie innerhalb der Ereignismethode die SortFields-Eigenschaft aus der DataDefinition-Eigenschaft der Berichtinstanz ab, und weisen Sie sie einer Instanz der SortFields-Indexklasse zu.

    Dim mySortFields As SortFields = hierarchicalGroupingReport.DataDefinition.SortFields
    
    SortFields sortFields = hierarchicalGroupingReport.DataDefinition.SortFields;
    
  3. Rufen Sie die erste SortField-Instanz aus der SortFields-Indexklasse ab, und weisen Sie sie der firstSortField-Variablen zu.

<table>
<colgroup>
<col style="width: 100%" />
</colgroup>
<thead>
<tr class="header">
<th><img src="images\xkh1wxd8.alert_note(de-de,VS.90).gif" alt="Note" class="note" />Anmerkung</th>
</tr>
</thead>
<tbody>
<tr class="odd">
<td><p>Die SortFields-Indexklasse ist 0-basiert.</p></td>
</tr>
</tbody>
</table>

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

``` csharp
SortField firstSortField = sortFields[0];
```
  1. Legen Sie für die SortDirection-Eigenschaft von firstSortField eine absteigende Sortierreihenfolge fest, indem Sie die DescendingOrder-Auswahl der SortDirection-Enumeration verwenden.

    firstSortField.SortDirection = SortDirection.DescendingOrder
    
    firstSortField.SortDirection = SortDirection.DescendingOrder;
    
  2. Jetzt können Sie der ReportSource-Eigenschaft des CrystalReportViewer-Steuerelements diesen Bericht (mit der im ReportDocument-Objektmodell geänderten Sortierreihenfolge) neu zuweisen.

    myCrystalReportViewer.ReportSource = hierarchicalGroupingReport
    
    crystalReportViewer.ReportSource = hierarchicalGroupingReport;
    

Als Nächstes geben Sie Code für die sortOrderAscending_Click()-Ereignismethode ein. Mit Ausnahme der Einstellung für die SortDirection-Eigenschaft ist der Code identisch.

So programmieren Sie das ReportDocument-Objektmodell des Berichts in der sortOrderAscending_Click-Ereignismethode

  1. Öffnen Sie die CodeBehind-Klasse, und suchen Sie die sortOrderAscending_Click()-Ereignismethode.

  2. Rufen Sie innerhalb der Ereignismethode die SortFields-Eigenschaft aus der DataDefinition-Eigenschaft der Berichtinstanz ab, und weisen Sie sie einer Instanz der SortFields-Indexklasse zu.

    Dim mySortFields As SortFields = hierarchicalGroupingReport.DataDefinition.SortFields
    
    SortFields sortFields = hierarchicalGroupingReport.DataDefinition.SortFields;
    
  3. Rufen Sie die erste SortField-Instanz aus der SortFields-Indexklasse ab, und weisen Sie sie der firstSortField-Variablen zu.

<table>
<colgroup>
<col style="width: 100%" />
</colgroup>
<thead>
<tr class="header">
<th><img src="images\xkh1wxd8.alert_note(de-de,VS.90).gif" alt="Note" class="note" />Anmerkung</th>
</tr>
</thead>
<tbody>
<tr class="odd">
<td><p>Die SortFields-Indexklasse ist 0-basiert.</p></td>
</tr>
</tbody>
</table>

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

``` csharp
SortField firstSortField = sortFields[0];
```
  1. Legen Sie für die SortDirection-Eigenschaft der firstSortField-Instanz eine aufsteigende Sortierreihenfolge fest, indem Sie die AscendingOrder-Auswahl der SortDirection-Enumeration verwenden.

    firstSortField.SortDirection = SortDirection.AscendingOrder
    
    firstSortField.SortDirection = SortDirection.AscendingOrder;
    
  2. Jetzt können Sie der ReportSource-Eigenschaft des CrystalReportViewer-Steuerelements diesen Bericht (mit der im ReportDocument-Objektmodell geänderten Sortierreihenfolge) neu zuweisen.

    myCrystalReportViewer.ReportSource = hierarchicalGroupingReport
    
    crystalReportViewer.ReportSource = hierarchicalGroupingReport;
    

Die Programmierung des ReportDocument-Objektmodells des Berichts innerhalb der einzelnen Ereignismethoden ist jetzt abgeschlossen. Im nächsten Abschnitt überprüfen Sie, ob diese Sortierreihenfolgen funktionieren und ob sie ohne Anwendung von Session beibehalten werden.