Isn't the typical wisdom that if you're going to change the backing store, detach it from the display part first, do the change and then re-connect it? This is what I've seen recommended for GtkTreeViews, for example.