答案:C.
1.dress如果做及物动词,其宾语是sb,而不是衣帽一类的sth,即其结构为:sb dress sb/oneself in sth,排除A;
2.carry不能用表示“穿戴”,排除D.
3.wear和put on都可以用于进行时,但是句意有区别:
be wearing sth的意思是“正穿着”,而be putting sth on的意思是“正在穿...”,排除C.
原因在于wear是一个延续性动词,而put on则是一个瞬间性动词.
4.have on的意思也是“穿着”,和wear同义,但是因为它不能用于进行时,所以只用了一般过去时.
综上所述,正确答案为C.