I'm not quite sure how you intend for the progress bar to combine different successes, but if you say that further progress is at the bottom of the z-index and the least progress is at the top, then I would do something like that:
1) I would probably create a user control for this new spotlight.
2) It will have a property called NumberOfProgresses, which is associated with an array containing the state of the specified progressions.
3) (, , - ), wpf . background , , borderbrush . .
4) UpdateProgress, .
5) ( * ) Z, /, horizontaly, , , .
, , OnRender()...
, WPF OnRender this OnRender, , WinForms OnPaint.
, , WPF ;)
. , . , , , , / .