Beispiel für die Arbeit mit dem ValueListEditor

// es werden 4 Buttons, 1 ValueListEditor und 1 Edit benötigt

// *.h
private: // Anwender-Deklarationen
TStringList *berufe;

...

// *.cpp: 
void __fastcall TForm1::FormCreate(TObject *Sender)
{
    // VLE schön machen :)
    ValueListEditor1->DisplayOptions << doColumnTitles << doAutoColResize;
    ValueListEditor1->TitleCaptions->Strings[0] = "Vorname";
    ValueListEditor1->TitleCaptions->Strings[1] = "Beruf";

    // StringList für die im VLE angezeigte ComboBox (PickList) vorbereiten:
    berufe = new TStringList();
    berufe->Add("Bäcker");
    berufe->Add("Angler");
    berufe->Add("Psychater");
    berufe->Add("Informatiker");
    berufe->Sort();

    Edit1->Text = "Emil";
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormDestroy(TObject *Sender)
{
    // die StringList muss natürlich auch wieder weg
    delete berufe;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
    // neues Wertepaar in den VLE einsetzen
    ValueListEditor1->InsertRow(Edit1->Text, "", false);

    // Picklist für das Wertefenster erstellen
    ValueListEditor1->ItemProps[ValueListEditor1->Row-1]->EditStyle = esPickList;
    ValueListEditor1->ItemProps[ValueListEditor1->Row-1]->PickList = berufe;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
    // gewählte Zeile im VLE löschen
    if (ValueListEditor1->Strings->Count > 0) ValueListEditor1->DeleteRow(ValueListEditor1->Row);
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button3Click(TObject *Sender)
{
    // gewählte Zeile im VLE ändern
    if (ValueListEditor1->Strings->Count > 0) ValueListEditor1->Keys[ValueListEditor1->Row] = Edit1->Text;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button4Click(TObject *Sender)
{
    // VLE speichern
    if (ValueListEditor1->Strings->Count > 0) ValueListEditor1->Strings->SaveToFile("./Test.dat");
}