The GtkTreeView, GtkComboBox etc.... are all general widgets to handle the majority of cases. This does mean it will not be the most efficient for everyone.
So if you are adding anything to a GtkTreeView it would require that on every insertion that it would recalculate the size of and height of everything stored for display and request a re-draw. What you could do to improve performance is to not realize the GtkTreeView widget before adding the large number of items to the Model or temporally disconnect the Model from the GtkTreeView before adding the large number of items.
Take a look at this tutorial (it may be old, though most is still relevant) http://scentric.net/tutorial/treeview-tutorial.html
and in particular http://scentric.net/tutorial/sec-treemodel-add-rows.html#sec-treestore-adding-many-rows