Ich habe eine Anwendung, wo mehrere lange (Minuten) Aufgaben gleichzeitig im Hintergrund (d. H. Die gleiche Aufgabe für verschiedene Konten, einige Konten dauern länger als andere). Ich möchte einen Fortschrittsbalken und Statustext für jede Aufgabe parallel anzeigen. Ich vermutete, dass ich das in einem anderen Fenster zeigen könnte, wenn es viele solcher Accounts gäbe, aber im Moment ist das Szenario nur für 2-4 Accounts, daher würde ich gerne die Fortschrittsbalken in einem StatusStrip am unteren Rand des Mainstreams zeigen bilden. Ich denke, der StatusStrip sollte größer werden und ich würde ToolStripProgressBar und ToolStripStatusLabel eine dynamisch über die andere hinzufügen, basierend auf der Anzahl der Konten, die zu einem bestimmten Zeitpunkt verarbeitet werden. Ist das möglich? Ich habe überlegt, ein TableLayoutPanel innerhalb des StatusStrip zu verwenden, aber der Visual Studio-Designer lässt nur sehr wenige Komponenten zu einem StatusStrip hinzufügen. Gibt es ein Problem damit, dass ich das programmatisch hinzufüge?Mehrere Fortschrittsbalken in StatusStrip
1
A
Antwort
1
Wahrscheinlich ist es kein intelligentes UI-Design, aber nur zu Ihrer Information, können Sie jedes Steuerelement mit ToolStripControlHost
hinzufügen. Hier ist ein einfaches Beispiel, das Sie mehr hinzufügen StatusBar
Steuerelemente in einem einzigen Punkt von StatusStrip
mit Code läßt:
ToolStripControlHost host;
FlowLayoutPanel panel;
private void button1_Click(object sender, EventArgs e)
{
if (panel == null)
{
panel = new FlowLayoutPanel();
panel.FlowDirection = FlowDirection.TopDown;
panel.WrapContents = false;
panel.AutoSize = true;
panel.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
}
if (host == null)
{
host = new ToolStripControlHost(panel);
this.statusStrip1.Items.Add(host);
}
panel.Controls.Add(new ProgressBar() { /* Value = new Random().Next(0, 100) */ });
}
Hinweis: Sie auch ToolStripControlHost
erweitern können bieten Entwurfszeitunterstützung, zu Werfen Sie einen Blick auf How to: Wrap a Windows Forms Control with ToolStripControlHost.
Verwandte Themen
- 1. Verwenden von StatusStrip in C#
- 2. Mehrere Powershell-Fortschrittsbalken (verschachtelt?)
- 3. StatusStrip verursacht Hintergrundflickern
- 4. Anker ToolStripProgressBar rechts von StatusBar (StatusStrip)
- 5. Einfaches Bild in Windows Forms StatusStrip Steuerelement
- 6. Mehrere Fortschrittsbalken visualy Update nur eine
- 7. Mehrere kreisförmige Fortschrittsbalken werden beim Scrollen aktiv
- 8. Bootstrap mehrere Bars auf horizontalen Fortschrittsbalken
- 9. Android Fortschrittsbalken indeterminatedrawable nicht in den Fortschrittsbalken
- 10. Wie mehrere Fortschrittsbalken behandelt werden sollten in Javascript
- 11. Wie richte ich die Steuerelemente in einem StatusStrip rechts aus?
- 12. Benutzerdefinierte Fortschrittsbalken in Android?
- 13. Dynamische Fortschrittsbalken in WPF
- 14. Create Fortschrittsbalken in Liferay
- 15. Fortschrittsbalken in wpf
- 16. Vertikaler Fortschrittsbalken in HTML?
- 17. Fortschrittsbalken in for-Schleifen
- 18. Download Fortschrittsbalken in Kivy
- 19. Fortschrittsbalken in WinForms
- 20. Text Fortschrittsbalken in Matlab
- 21. Fortschrittsbalken in benutzerdefinierten Dialog
- 22. JQuery UI: mehrere Fortschrittsbalken - Probleme dynamische Werte setzen
- 23. Fortschrittsbalken für mehrere Ajax-Anforderungen mit Abschlussstadien. Ist es möglich?
- 24. Kann ich einen ElementHost zu einem regulären WinForm-StatusStrip hinzufügen?
- 25. StatusStrip-Label nicht sichtbar, wenn Text zu lang
- 26. Circular Fortschrittsbalken
- 27. Faking Fortschrittsbalken
- 28. Vertical Fortschrittsbalken
- 29. wxPython Fortschrittsbalken
- 30. Delphi Fortschrittsbalken
@RezaAghaei, warum hast du deine Antwort gelöscht, ich hatte gehofft, es bald auszuprobieren – Jimmy
Weil ich keine Antwort erhalten habe, nachdem ich gefragt habe * Ist es nicht, was du meinst? * Aber wenn du Interesse an der Lösung, ich werde es wieder herstellen. –
Sorry, ich wollte es versuchen, bevor ich die Antwort kommentiere. Danke für die Wiederherstellung. Es ist in der Tat, was ich meinte. – Jimmy