Как получить SelectedValue ComboBox из кода?

Я пытаюсь построить что-то вродеTLookupComboBox используя LiveBindings.

Я поместил нормальныйTComboBox в форме VCL. У меня также есть набор данных с некоторыми строками, которые имеют два поляid а такжеtext.

Затем я использовал редактор LiveBindings, чтобы создатьTBindSourceDB иTBindingsList.

В нем есть только одна привязка:

object BindingsList1: TBindingsList
  Methods = <>
  OutputConverters = <>
  UseAppManager = True
  Left = 244
  Top = 229
  object LinkFillControlToField1: TLinkFillControlToField
    Category = 'Quick Bindings'
    Control = ComboBox1
    Track = True
    FillDataSource = BindSourceDB1
    FillValueFieldName = 'id'
    FillDisplayFieldName = 'text'
    AutoFill = True
    BufferCount = -1
    FillExpressions = <>
  end
end

Как видите, у меня есть разные поля дляFillValueFieldName а такжеFillDisplayFieldName.

Дизайнер LiveBindings выглядит так:

ComboBox заполняется значениями из поляtextтак что я думаю, что настроил правильно.

Как я могу получитьSelectedValue из кода?

Я мог бы визуально связать значение сTLabel и тогда я смог прочитатьTLabel.Caption, но наверняка есть более простой способ?

PS: я не хочу хранить значение в БД, иначе я бы просто использовалTDBLookupComboBox.

Редактировать: Я пытался использоватьTPrototypeBindSource, но это не имеет очевидного способа получить доступ к полям из кода. Я также пытался использовать второйTBindSourceDB вместе сTClientDataSet который работает, но это похоже на использование кувалды, чтобы сломать орех.

Ответы на вопрос(2)

Ваш ответ на вопрос