Align ComboBox members with the Row naming used by ListBox and PopupMenu
- Status
- Fixed
- Fixed in
- v26.9.4
- Area
- desktop web
- Source discussion
- https://forum.objo.dev/d/1183-rowtag-vs-itemtag
- Last updated
- 2026-09-28
Upvotes
1 upvote
Uses your Objo forum account.
Public summary
ComboBox currently names its list members with an Item vocabulary (AddItem, ItemAt, ItemTag, ItemCount, SelectedIndex, SelectedItem, …) while the other list controls — ListBox and PopupMenu, on both desktop and web — use a Row vocabulary (AddRow, RowTextAt, RowTag, RowCount, SelectedRowIndex, SelectedRowText). Users moving between these controls, and users migrating from Xojo (whose ComboBox uses the Row vocabulary), hit a compile error re-learning the names each time.
ComboBox will gain the Row-named members, matching ListBox and PopupMenu:
New member Kind Replaces (deprecated alias)RowCount
property
ItemCount
AddRow(text)
method
AddItem(text)
AddRows(items() As String)
method
AddItems(items)
AddRowAt(index, text)
method
InsertItem(index, text)
RemoveRow(index)
method
RemoveItem(index)
RemoveAllRows()
method
RemoveAll()
RowTextAt(index)
method
ItemAt(index)
SelectedRowIndex
property
SelectedIndex
SelectedRowText
property
SelectedItem
RowTag(index)
method
ItemTag(index)
SetRowTag(index, tag)
method
SetItemTag(index, tag)
IndexOfRowTag(tag)
method
IndexOfItemTag(tag)
The Item members keep working indefinitely as deprecated compatibility aliases: existing projects compile unchanged, but each use produces a deprecation warning naming the replacement, and the aliases appear struck through in autocomplete. Both the desktop and web ComboBox gain the same members so the two platforms stay in parity. Text, Placeholder, AutoComplete, Sorted, ReadOnly, IndexOf, Sort(), SelectAll(), and the Changed event are unchanged.