The elements in my TreeListBox can be selected through another mechanism. If the TreeListBox elements are currently visible the selected state is synchronized via the IsSelectedPath property without any issue. The problem occurs if I select items using the other mechanism before I've expanded the TreeListBox - if I then expand the items are not show selected and the 2 selection concepts are out of sync. Is there something I need to do to force the sync of selection state before things are expanded?