Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
In diesem Abschnitt wird erläutert, wie Sie ListBox-Steuerelemente für ein Windows-Projekt konfigurieren. Falls Sie eine Website erstellen, informieren Sie sich unter Konfigurieren der ListBox-Steuerelemente für eine Website.
Jetzt können Sie den Click-Ereignishandler für das Button-Steuerelement erstellen und diesem Ereignishandler dann Code hinzufügen. Durch den Ereignishandler werden verschiedene boolesche Werte für die Symbolleisteneigenschaften der CrystalReportViewer-Klasse auf der Grundlage von Werten festgelegt, die Anwender im ListBox-Steuerelement auswählen.
Vor diesem Ereignishandler müssen jedoch zwei Enumerationen erstellt werden: CeWinCRVReportOptions und CeWinCRVToolbarOptions.
Diese Enumerationen stellen eine Liste von Bericht- und Symbolleistenelementen zur Auswahl bereit.
So erstellen Sie die CeWinCRVReportOptions-Enumeration
Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf den fett formatierten Projektnamen, zeigen Sie auf Hinzufügen, und klicken Sie dann auf Klasse .
Geben Sie im Dialogfeld Neues Element hinzufügen im Feld NameCeWinCRVReportOptions ein, und klicken Sie dann auf Hinzufügen.
<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>In Visual Studio werden Sie möglicherweise aufgefordert, diese Klasse in einem App_Code-Verzeichnis abzulegen. Klicken Sie auf die Schaltfläche Ja.</p></td>
</tr>
</tbody>
</table>
Ändern Sie in der Klassensignatur das Wort "class" in "enum", um die Klasse in eine Enumeration zu konvertieren.
AnmerkungDenken Sie in Visual Basic daran, sowohl die öffnende als auch die schließende Signatur der Klasse in eine Enumeration (enum) zu ändern.
Da Enumerationen keine Konstruktoren besitzen, löschen Sie die in der C#-Version des Codes enthaltene standardmäßige Konstruktormethode.
Geben Sie innerhalb der Enumeration folgende Werte ein:
Toolbar Group_Tree Status_BarToolbar, Group_Tree, Status_BarKlicken Sie im Menü Datei auf Alle speichern.
So erstellen Sie die CeWinCRVToolbarOptions-Enumeration
Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf den fett formatierten Projektnamen, zeigen Sie auf Hinzufügen, und klicken Sie dann auf Klasse .
Geben Sie im Dialogfeld Neues Element hinzufügen im Feld Name "CeWinCRVToolbarOptions" ein, und klicken Sie dann auf Hinzufügen.
<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>Sie werden u.U. aufgefordert, diese Klasse in ein App_Code-Verzeichnis einzufügen. Klicken Sie auf die Schaltfläche Ja.</p></td>
</tr>
</tbody>
</table>
- Ändern Sie in der Klassensignatur das Wort "class" in "enum", um die Klasse in eine Enumeration zu konvertieren.
<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>Denken Sie in Visual Basic daran, sowohl die öffnende als auch die schließende Signatur der Klasse in eine Enumeration (enum) zu ändern.</p></td>
</tr>
</tbody>
</table>
Da Enumerationen keine Konstruktoren besitzen, löschen Sie die in der C#-Version des Codes enthaltene standardmäßige Konstruktormethode.
Geben Sie innerhalb der Enumeration folgende Werte ein:
Page_Navigation_Button Go_to_Page_Button Close_View_Button Print_Button Refresh_Button Export_Button Group_Tree_Button Zoom_Button Search_ButtonPage_Navigation_Button, Go_to_Page_Button, Close_View_Button, Print_Button, Refresh_Button, Export_Button, Group_Tree_Button, Zoom_Button, Search_ButtonKlicken Sie im Menü Datei auf Alle speichern.
So füllen Sie die ListBox-Steuerelemente mit Enumerationswerten
Jetzt füllen Sie die ListBox-Steuerelemente mit Enumerationswerten, die die für die CrystalReportViewer-Symbolleiste verfügbaren Eigenschaften darstellen.
Öffnen Sie das Windows Form.
Klicken Sie im Menü Ansicht auf Code.
Setzen Sie die DataSource-Eigenschaft des ListBox-Steuerelements listCRVReport innerhalb der ConfigureCrystalReports()-Methode auf die Werte der CeWinCRVReportOptions-Enumeration.
<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 ConfigureCrystalReports()-Methode wurde während des <a href="https://msdn.microsoft.com/de-de/library/vs%7ccrystlmn%7c%7e%5chtml%5ctopic168.htm(v=VS.90)">Projekt-Setup</a>s am Anfang dieses Lernprogramms erstellt. Um dieses Lernprogramm erfolgreich abzuschließen, beginnen Sie mit dem <a href="https://msdn.microsoft.com/de-de/library/vs%7ccrystlmn%7c%7e%5chtml%5ctopic168.htm(v=VS.90)">Projekt-Setup</a>.</p></td>
</tr>
</tbody>
</table>
``` vb
listCRVReport.DataSource =
System.Enum.GetValues(GetType(CeWinCRVReportOptions))
```
``` csharp
listCRVReport.DataSource =
System.Enum.GetValues(typeof(CeWinCRVReportOptions));
```
Setzen Sie die DataSource-Eigenschaft des ListBox-Steuerelements listCRVToolbar auf die Werte der CeWinCRVToolbarOptions-Enumeration.
listCRVToolbar.DataSource = System.Enum.GetValues(GetType(CeWinCRVToolbarOptions))listCRVToolbar.DataSource = System.Enum.GetValues(typeof(CeWinCRVToolbarOptions));Binden Sie die Datei "Chart.rpt" an die ReportSource-Eigenschaft von CrystalReportViewercontrol.
Informationen zu Musterberichten finden Sie unter Verzeichnis "Samples".
myCrystalReportViewer.ReportSource = "C:\Programme\Microsoft Visual Studio 8\Crystal Reports\Samples\De\Reports\Feature Examples\Chart.rpt"crystalReportViewer.ReportSource = "C:\\Programme\\Microsoft Visual Studio 8\\Crystal Reports\\Samples\\De\\Reports\\Feature Examples\\Chart.rpt";
So codieren Sie das Button-Steuerelement "redisplay" für ein Windows-Projekt
Jetzt können Sie dem Click-Ereignis des Button-Steuerelements Code hinzufügen. Durch die Click-Methode müssen boolesche Werte für die Bericht- und Symbolleistenelemente der CrystalReportViewer-Klasse festgelegt werden. Sobald ein Element ausgewählt wird, wird der boolesche Wert auf "true" gesetzt und das Bericht- oder Symbolleistenelement angezeigt. Wird eine Eigenschaft nicht ausgewählt, wird der boolesche Wert auf "False" gesetzt und das Bericht- oder Symbolleistenelement nicht angezeigt.
Öffnen Sie das Windows Form.
Klicken Sie im Menü Ansicht auf Designer.
Doppelklicken Sie auf das Button-Steuerelement redisplay.
Die CodeBehind-Klasse des Berichts wird angezeigt. Eine redisplay\_Click()-Ereignismethode wurde automatisch generiert.
- Rufen Sie die GetSelected()-Methode innerhalb der redisplay_Click()-Ereignismethode auf, und übergeben Sie jedes im ListBox-Steuerelement enthaltene Element.
Die GetSelected()-Methode gibt einen booleschen Wert zum Festlegen der Bericht- oder Symbolleisteneigenschaften von CrystalReportViewer zurück.
<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 CrystalReportViewer-Bericht- und -Symbolleistenelemente werden in den Enumerationen CeWinCRVReportOptions und CeWinCRVToolbarOptions auf ihre entsprechenden Werte gesetzt.</p></td>
</tr>
</tbody>
</table>
``` vb
myCrystalReportViewer.ShowPageNavigateButtons =
listCRVToolbar.GetSelected(CeWinCRVToolbarOptions.Page_Navigation_Button)
myCrystalReportViewer.ShowGotoPageButton =
listCRVToolbar.GetSelected(CeWinCRVToolbarOptions.Go_to_Page_Button)
myCrystalReportViewer.ShowCloseButton = listCRVToolbar.
GetSelected(CeWinCRVToolbarOptions.Close_View_Button)
myCrystalReportViewer.ShowPrintButton =
listCRVToolbar.GetSelected(CeWinCRVToolbarOptions.Print_Button)
myCrystalReportViewer.ShowRefreshButton =
listCRVToolbar.GetSelected(CeWinCRVToolbarOptions.Refresh_Button)
myCrystalReportViewer.ShowExportButton =
listCRVToolbar.GetSelected(CeWinCRVToolbarOptions.Export_Button)
myCrystalReportViewer.ShowGroupTreeButton =
listCRVToolbar.GetSelected(CeWinCRVToolbarOptions.Group_Tree_Button)
myCrystalReportViewer.ShowZoomButton =
listCRVToolbar.GetSelected(CeWinCRVToolbarOptions.Zoom_Button)
myCrystalReportViewer.ShowTextSearchButton =
listCRVToolbar.GetSelected(CeWinCRVToolbarOptions.Search_Button)
myCrystalReportViewer.DisplayToolbar =
listCRVReport.GetSelected(CeWinCRVReportOptions.Toolbar)
myCrystalReportViewer.DisplayGroupTree =
listCRVReport.GetSelected(CeWinCRVReportOptions.Group_Tree)
myCrystalReportViewer.DisplayStatusBar =
listCRVReport.GetSelected(CeWinCRVReportOptions.Status_Bar)
```
``` csharp
crystalReportViewer.ShowPageNavigateButtons =
listCRVToolbar.GetSelected(Convert.ToInt32(CeWinCRVToolbarOptions.Page_Navigation_Button));
crystalReportViewer.ShowGotoPageButton =
listCRVToolbar.GetSelected(Convert.ToInt32(CeWinCRVToolbarOptions.Go_to_Page_Button));
crystalReportViewer.ShowCloseButton = listCRVToolbar.
GetSelected(Convert.ToInt32(CeWinCRVToolbarOptions.Close_View_Button));
crystalReportViewer.ShowPrintButton =
listCRVToolbar.GetSelected(Convert.ToInt32(CeWinCRVToolbarOptions.Print_Button));
crystalReportViewer.ShowRefreshButton =
listCRVToolbar.GetSelected(Convert.ToInt32(CeWinCRVToolbarOptions.Refresh_Button));
crystalReportViewer.ShowExportButton =
listCRVToolbar.GetSelected(Convert.ToInt32(CeWinCRVToolbarOptions.Export_Button));
crystalReportViewer.ShowGroupTreeButton =
listCRVToolbar.GetSelected(Convert.ToInt32(CeWinCRVToolbarOptions.Group_Tree_Button));
crystalReportViewer.ShowZoomButton =
listCRVToolbar.GetSelected(Convert.ToInt32(CeWinCRVToolbarOptions.Zoom_Button));
crystalReportViewer.ShowTextSearchButton =
listCRVToolbar.GetSelected(Convert.ToInt32(CeWinCRVToolbarOptions.Search_Button));
crystalReportViewer.DisplayToolbar =
listCRVReport.GetSelected(Convert.ToInt32(CeWinCRVReportOptions.Toolbar));
crystalReportViewer.DisplayGroupTree =
listCRVReport.GetSelected(Convert.ToInt32(CeWinCRVReportOptions.Group_Tree));
crystalReportViewer.DisplayStatusBar =
listCRVReport.GetSelected(Convert.ToInt32(CeWinCRVReportOptions.Status_Bar));
```
So testen Sie das Button-Steuerelement "redisplay"
Sie können das Projekt jetzt erstellen und ausführen, um die CrystalReportViewer-Symbolleiste anzupassen.
Klicken Sie im Menü Erstellen auf Projektmappe erstellen.
Sollten Buildfehler vorhanden sein, beheben Sie diese jetzt bitte.
Klicken Sie im Menü Debuggen auf Debuggen starten.
Die ListBox-Steuerelemente listCRVReport und listCRVToolbar zeigen eine vollständige Liste von CrystalReportViewer-Bericht- und -Symbolleistenoptionen an.
Wählen Sie im Listenfeld mit Symbolleistenoptionen "Page_Navigation_Button", "Print_Button" und "Export_Button".
Wählen Sie im Listenfeld mit Berichtoptionen "Toolbar", "Group_Tree" und "Main_Page".
Klicken Sie auf Bericht neu anzeigen.
Die Seite wird erneut geladen und zeigt ein CrystalReportViewer-Steuerelement mit einer sichtbaren Symbolleiste, Gruppenstruktur und Hauptseite an. Auf der Symbolleiste sind nur die Schaltflächen zur Seitennavigation sowie zum Drucken und Exportieren sichtbar.
Kehren Sie zu Visual Studio zurück, und klicken Sie auf Debuggen beenden, um den Debugmodus zu verlassen.