Zwei Grids übereinander synchron horizontal positionieren beim Scrollen

27/02/2010 - 15:17 von Liz Helmecke | Report spam
Hallo Newsgroup,

in einer Windows Form stehen zwei DataGridViews übereinander:
Im oberen Grid stehen die Datensàtze.
Im unteren Grid, das die gleichen Spalten hat aber nur aus 1 leeren Zeile
besteht, kann man Filterkriterien eingeben.
Das untere Grid hat immer genau die gleichen Spaltenbreiten wie das obere,
damit man die Filterkriterien immer schön unter dem jeweiligen Datenfeld
eingeben kann.

Die Grids sitzen jeweils in Panels, alles hat Dock=Fill, damit es bei
Änderungen der Fenstergröße immer schön mit vergrößert.

Mein Vorhaben:
Wenn man nach rechts scrollt, sollen beide Grids synchron nach rechts
scrollen (weil es mehr Grid-Columns gibt als angezeigt werden können).

Mein erster Ansatz:
Ich will in der Form eine horizontale Scrollbar.
Aber Form.Autoscroll = True bewirkt in dieser Konstellation nichts (wegen
Dock=Fill).
Die Form zeigt einfach keine Scrollbar.

Mein zweiter Ansatz:
Alternativ habe ich versucht, das obere Grid selbst auf Autoscroll=True zu
setzen, und beim Scroll-Ereignis das untere Grid mit zu positionieren. Ich
weiß aber nicht wie (ob überhaupt) das gehen soll.

Hat jemand eine Idee?
Danke
Liz
 

Lesen sie die antworten

#1 Frank Dzaebel
27/02/2010 - 16:55 | Warnen spam
Hallo Liz,

in einer Windows Form stehen zwei DataGridViews übereinander:
Im oberen Grid stehen die Datensàtze.
Im unteren Grid, das die gleichen Spalten hat aber nur aus 1 leeren
Zeile besteht, kann man Filterkriterien eingeben.
Das untere Grid hat immer genau die gleichen Spaltenbreiten wie das
obere, damit man die Filterkriterien immer schön unter dem jeweiligen
Datenfeld eingeben kann.



Eventuell kannst Du Dir hier die Techniken abschauen:

[DataGridView mit Fußzeile]
http://dzaebel.net/DgvFooter.htm


ciao Frank
Dipl.Inf. Frank Dzaebel [MCP/MVP C#]
http://Dzaebel.NET

Ähnliche fragen