2017-05-15 4 views
0

Ich habe eine Aufgabe, eine Fortschrittsanzeige zu implementieren, während Datensätze eingefügt werden. Und ich weiß nicht, wo ich anfangen soll.Hinzufügen von Fortschrittsbalken beim Einfügen von Datensätzen in Datenbank

Um klarer zu sein, arbeite ich an einem Programm, das den gesamten Text in einer Textdatei lesen muss. Und muss diese txt-Dateien teilen. Als nächstes muss es in eine Datenbank eingefügt werden.

Jetzt möchte mein Chef eine Fortschrittsbalken haben, während die Datensätze einfügen, damit er sehen konnte, wie weit der Einsatz abgeschlossen ist.

Kann mir bitte jemand helfen?

+0

zuerst erhalten Sie alle Ihre Daten und teilen Sie alle Daten. Zählen Sie die Anzahl der einzufügenden Elemente, fügen Sie sie dann ein und erhöhen Sie sie um eins, bis Sie den Gesamtbetrag erreichen, und verwenden Sie: 'CurrentItemCount/TotalItemCount * 100', um den Prozentsatz zu erhalten. – Mederic

+0

Was hast du bisher versucht? Ich sehe keinen Code. Das macht es schwer dir zu helfen. – muffi

+0

@muffi Ich weiß nicht, wo ich anfangen soll Ich habe einen Toolstrip zu meinem Formular hinzugefügt, aber das war's, es tut mir leid ... –

Antwort

0

Set Fortschrittsbalken der Maximalwert am Anfang des Code

ProgressBar.Maximum = TotalItemCount 

Dann alles, was Sie tun müssen, ist ein jedes Mal, fügen Sie einen Datensatz einfügen.

'Add this bit of code after you inserted one record 
ProgressBar.Increment(1) 
+0

Nur ein wenig heads-up: 'Refresh()' erzwingt eine synchrone Neuzeichnung und ** muss nicht ** aufgerufen werden, um die Änderungen zu sehen. Wenn dieser Prozess mit Multithreading- und Marshalling-Aufrufen auf der Benutzeroberfläche ordnungsgemäß ausgeführt wird, ist das Aufrufen von 'Refresh()' unnötig und führt nur dazu, dass der UI-Thread möglicherweise blockiert wird und der Fortschrittsbalken zweimal neu gezeichnet wird. –

+0

Das Aufrufen von 'PerformStep()', 'Increment()' oder das Ändern der Eigenschaft 'Value' führt dazu, dass der Fortschrittsbalken sich selbst neu zeichnet. –

+0

ah okay. Ich werde es aus der Antwort entfernen, da es nicht benötigt wird. Danke für die Köpfe hoch –

Verwandte Themen