diff --git a/src/osx/combobox_osx.cpp b/src/osx/combobox_osx.cpp index 3dc89288ee..9a1f1b75e2 100644 --- a/src/osx/combobox_osx.cpp +++ b/src/osx/combobox_osx.cpp @@ -189,8 +189,11 @@ wxString wxComboBox::GetStringSelection() const void wxComboBox::SetString(unsigned int n, const wxString& s) { - Delete(n); - Insert(s, n); + // Notice that we shouldn't delete and insert the item in this control + // itself as this would also affect the client data which we need to + // preserve here. + GetComboPeer()->RemoveItem(n); + GetComboPeer()->InsertItem(n, s); SetValue(s); // changing the item in the list won't update the display item }