Top-Position bei Panel

27/03/2010 - 12:37 von Frank Bach | Report spam
Hallo NG,

ich habe ein Panel mit Autoscroll =True.
Wenn ich bei einem Element innerhalb des Panels die Top-Eigenschaft neu
setze:

cmdButton.Top = 0

dann wird der Button nicht nach ganz oben im Panel gesetzt, sondern nur an
den oberen Rand des SICHTBAREN Panelbereichs.
das ist mal so mal so, jenachdem wie die Scrollbalken stehen im Panel.

Wie kann ich ein Element an die absolute obere Grenze setzen egal ob
sichtbar oder nicht?

Danke!

Frank
 

Lesen sie die antworten

#1 Peter Götz
27/03/2010 - 13:43 | Warnen spam
Hallo Frank,

ich habe ein Panel mit Autoscroll =True.
Wenn ich bei einem Element innerhalb des Panels die Top-Eigenschaft neu
setze:

cmdButton.Top = 0

dann wird der Button nicht nach ganz oben im Panel gesetzt, sondern nur an
den oberen Rand des SICHTBAREN Panelbereichs.
das ist mal so mal so, jenachdem wie die Scrollbalken stehen im Panel.

Wie kann ich ein Element an die absolute obere Grenze setzen egal ob
sichtbar oder nicht?



Wo die Scrollbalken (X u. Y) gerade stehen kannst
Du mit Hilfe von

Panel.AutoScrollPosition

ermitteln.
Mit

Button1.Location = Panel1.AutoScrollPosition

setzt Du den Button an den tatsàchlichen oberen, linken
Rand des Panels (dies kann auch im unsichtbaren
Bereich sein).

Wenn Du den Button nur an den oberen Rand setzen
willst, die Position in der Waagerechten jedoch beibehalten
willst, dann schreibst Du

Button1.Location = new Point(Button1.Left, Panel1.AutoScrollPosition.Y)

Wie Du den Button1 an den linken Rand setzt und die
Position in der Senkrechten beibehàltst, darfst Du nun
selbst herausfinden.

Alles klar?

Gruß aus St.Georgen
Peter Götz
www.gssg.de (mit VB-Tipps u. Beispielprogrammen)

Ähnliche fragen