Autor Beitrag
boro
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 16



BeitragVerfasst: So 06.01.08 03:21 
Hallo an alle,

die Zahl der Zeilen in der DropDown Liste is immer nur 1 bei der ersten Benutzung. Nach der Wahl von irgendwelchen Zeile aus der Liste wird die Liste schon mit allen Zeilen angezeigt, hochstens aber mit der Zahl von DropDownRows Eigenschaft wie es auch sein soll.
Wie kann ich die Komponente DbLookupComboBox dazu zwingen die DropDown Liste gleich am Anfang mit gultigen Zahl der Zeilen zu zeigen ?
Ich benutze Turbo Pro.

Bin dankbar fur jeden Rat.
Boro
Andreas Schilling
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 128
Erhaltene Danke: 1

WIN XP, WIN 7
Delphi 5 Ent, Delphi 2007 Pro, XE4
BeitragVerfasst: Di 08.01.08 07:13 
Das kenne ich von Interbase / Firebird. Da wird beim Öffnen der Datenquelle immer nur ein Datensatz gefetcht. Lösung
ausblenden Delphi-Quelltext
1:
DbLookupComboBox.ListSource.DataSet.moveby(DbLookupComboBox.dropdownrows);					

beim Öffnen der Datenquelle ausführen. Mit moveby wird die benötigte Anzahl der Datensätze geholt.
zuma
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 660
Erhaltene Danke: 21

Win XP, Win7, Win 8
D7 Enterprise, Delphi XE, Interbase (5 - XE)
BeitragVerfasst: Di 08.01.08 08:33 
was auch hilft, ist ein
Dataset.Last;
Dataset.First;
dadurch wird das Dataset gezwungen, alle Datensätze zu fetchen.
Andreas' Lösung ist bei großen Datenmengen aber sicher performanter.

_________________
Ich habe nichts gegen Fremde. Aber diese Fremden sind nicht von hier! (Methusalix)
Warum sich Sorgen ums Leben machen? Keiner überlebts!
boro Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 16



BeitragVerfasst: Di 08.01.08 16:24 
Danke Andreas, dies ist genau mein Fall. Die Methode MoveBy ist der spaarsamste Weg zur vollen DropDown Liste.