Is this threadsafe, given it's called from the spot below that's using SET_CONTROL_LABEL_THREAD_SAFE ?

What about using the textbox if it's available (i.e. SetLine(1) would just set the 1st line in the textbox) and otherwise set the first K lines using the labels.