Hallo, ich bin dabei mich in C# und WPF einzuarbeiten.
Für ein Projekt brauche ich eine Balkenanzeige, die mir Werte visualisieren kann.
Für den ersten Anwendungsfall (min: 0.0 max: 10000.0) würde mir die Funktion der ProgressBar völlig ausreichen.
Für den zweiten Anwendungsfall (min: -5000.0 max: 5000.0) sollte der Balken der ProgressBar bei einem Value von z.B. -2500.0 von der Null-Linie aus nach unten sich mit entsprechender Farbe füllen und bei einem Value von z.B. 1000.0 von der Null-Linie nach oben füllen.
Leider habe ich im Netz nichts entsprechendes gefunden.
Für einen Umsetzungsvorschlag wäre ich sehr dankbar.
Gruß
Bitte beachte [Hinweis] Wie poste ich richtig?
Was ist die konkrete Frage? Was hast Du versucht? Wo kommst Du nicht weiter?
Willst Du ein fertiges Control, dann kannst auch selbst auf die Google/GitHub Suche gehen - das müssen nicht wir für Dich übernehmen 😉
- performance is a feature -
Microsoft MVP - @Website - @AzureStuttgart - github.com/BenjaminAbt - Sustainable Code
Hi. Danke für die Info.
Ein fertiges Contol möchte ich nicht, will doch was lernen.
Mein erster Ansatz war zwei mal die ProgressBar in ein StackPanel gesteckt damit die ober PB die positiven Werte anzeigt und die untere die negativen. Leider klappt das mit der Füllung bei den negativen Werten nicht. (PD füllt immer von min nach max)
Gruß
Du könntest mittels
<ProgressBar RenderTransformOrigin="0.5,0.5" >
<ProgressBar.RenderTransform>
<CompositeTransform Rotation="180"/>
</ProgressBar.RenderTransform>
</ProgressBar>
die gesamte untere ProgressBar um 180° rotieren lassen.
Hallo, danke für den Beitrag.
Wenn ich das probiere kommt eine Fehlermeldung "CompositeTransform wird bei einem WPF-Projekt nicht unterstützt.
Sorry.
OK, dann ist das nur für UWP.
Aber probiere dann mal
<ProgressBar RenderTransformOrigin="0.5, 0.5">
<ProgressBar.RenderTransform>
<RotateTransform Angle="180"/>
</ProgressBar.RenderTransform>
</ProgressBar>
Hi, folgender Stand.
Um den Balken bei negativen Werten nach unten wachsen zu lassen muss die PB um 180° gedreht werden. Dies funktioniert mit den neuen Code auch. Danke.
Leider müsste dann aber der Minimum-Wert auf Null und der Maximum-Wert auf z.B.: -1000 gesetzt werden. Wenn ich mit dieser Einstellung teste, ist der komplette Bereich der PB immer gefüllt, egal welcher Value vorgegeben wird.
Gruß
Benutze dafür nur den Betrag der Zahl (d.h. auch die untere Progressbar hat nur positive Zahlen als Bereich).