Ich probiere gerade ein bisschen an der Combobox rum. Dabei habe ich ganz nette Sachen festgestellt. Wenn ich die die TBindList wie folgt einstelle :
Delphi-Quellcode:
object BindList_Coaches: TBindList
Category = 'Lists'
ControlComponent = AdvCB_ClientInternalCare
SourceComponent = BindScopeDB_Coaches
FormatExpressions = <>
FormatControlExpressions = <
item
ControlExpression = 'Text'
SourceExpression = 'Firstname.AsString + '#39' '#39' + LastName.AsString'
end>
ClearControlExpressions = <>
end
Dann werden mir drei leere Zeilen als Auswahl in der Combobox angezeigt. Schreibe ich jetzt die gleiche ControlExpression und SourceExpression bei FormatExpression rein und lösche komplett die FormatControlExpression, dann werden mir alle Einträge richtig angezeigt und der erste Eintrag ausgewählt.
Wenn ich in beiden FormatExpressions das gleiche reinschreibe hat es den gleichen Effekt als wenn ich es nur in FormatExpression reinschreibe.
Edit:
So, ich habe das Problem mit dem Null Wert beim Hinzufügen eines neuen Datensatzes gelöst. Ich prüfe in dem Ereignis OnAssignedValue des BindLinks auf die ComboBox den Status vom Dataset. Ist das DataSet im Status dsInsert, wird der ItemIndex der Combobox auf -1 gesetzt. Ist der Status <> dsInsert, dann wird der Wert aus der Datenbank gesetzt.