Anpassen des Reportdesigners

Der Reportdesigner ist mit vielen Funktionen vollgestopft, die viele Benutzer nicht nutzen. Manchmal lenkt die Vielzahl von Symbolen und Menüs nur ab. Daher wünschen sich viele Anwender eine vereinfachte Version des Reportdesigners mit nur den Funktionen, die sie benötigen. Dies kann der Berichtsdesigner den Endanwendern bieten, indem Sie ihn in Ihre Anwendung einbetten.

In diesem Artikel werden wir uns ansehen, wie man eine benutzerdefinierte Designer-Elemente-Verwaltung Meldung, das heißt eine benutzerdefinierte Symbolleiste mit den gewünschten Funktionsschaltflächen erstellen kann. Sie ist recht einfach zu erstellen. Die Tatsache, dass die Berichtsdesigner-Komponente uns eine Art API zur Verfügung stellt, um einige ihrer Funktionen aufzurufen, wie z. B. das Erstellen, Herunterladen und Speichern eines Berichts, Drucken, Anzeigen eines Berichts und viele andere.

Deshalb brauchen wir nur - eine Komponente des Berichtsdesigners hinzuzufügen und Ihre eigene Symbolleiste zu erstellen.

Fügen Sie im Formular die Komponente ToolStrip hinzu. Und erstellen Sie ein Panel mit 7 Schaltflächen:

Custom designer menu

Verbinden Sie fastReport.dll mit dem Projekt. Und für das Formular erstellen wir einen Load-Eventhandler:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
public DesignerControl designer; // Stellen Sie die Variable für die Report-Designer-Komponente ein
 private void Form1_Load(object sender, EventArgs e)
 {
 designer = new DesignerControl(); // Erstellen Sie eine Kopie von Reportdesigner
 this.Controls.Add(designer); // Komponente zum Formular hinzufügen
 
 Report report = new Report(); // Ein Berichtsobjekt erstellen
 designer.Report = report; // Übergeben Sie den erstellten leeren Bericht an den Designer
 designer.RefreshLayout(); // Aktualisieren Sie den Designer
 designer.Dock = DockStyle.Fill; // Einstellen des Standorts der Designerkomponente
 designer.ShowMainMenu = false; // Menü im Designer ausschalten
 }
 
 // Einen neuen Bericht erstellen
 private void ToolStripButton1_Click(object sender, EventArgs e)
 {
 designer.cmdNew.Invoke();
 }
// Einen Bericht öffnen
 private void OpenBtn_Click(object sender, EventArgs e)
 {
 designer.cmdOpen.Invoke();
 }
// Einen Bericht speichern
 private void SaveBtn_Click(object sender, EventArgs e)
 {
 designer.cmdSave.Invoke();
 }
// Einen Bericht anzeigen
 private void PreviewBtn_Click(object sender, EventArgs e)
 {
 designer.cmdPreview.Invoke();
 }
// Programm schließen
 private void CloseBtn_Click(object sender, EventArgs e)
 {
 this.Dispose();
 }
// Die letzte Aktion rückgängig machen
 private void UndoBtn_Click(object sender, EventArgs e)
 {
 designer.cmdUndo.Invoke();
 }
// Die letzte Aktion wiederholen
 private void RedoBtn_Click(object sender, EventArgs e)
 {
 designer.cmdRedo.Invoke();
 }

Wie Sie sehen können, haben wir für jede Schaltfläche aus der Symbolleiste ein Klick-Ereignis erstellt. In Übereinstimmung mit den Funktionen der Schaltflächen rufen wir das richtige Designteam auf.

Liste der verfügbaren Befehle:

Und nun führen wir unsere Anwendung aus:

Custom Report Designer

Sieht aus wie ein gewöhnlicher Reportdesigner. Aber beachten Sie die obere Symbolleiste - sie ist nicht standardmäßig. Wir haben nur die Funktionen, die wir brauchen.

Fast Reports
  • 800-985-8986 (Englisch, die USA)
  • +4930568373928 (Deutsch)
  • +55 19 98147-8148 (Portugiesisch)
  • info@fast-report.com
  • 901 N Pitt Str #325 Alexandria VA 22314

© 1998-2024 Fast Reports Inc.
Trustpilot