【正确答案】
D
【答案解析】[解析] 本题考查的是承揽合同。依《合同法》第256条规定,定作人提供材料的,定作人应当按照约定提供材料。承揽人对定作人提供的材料,应当及时检验,发现不符合约定时,应当及时通知定作人更换、补齐或者采取其他补救措施。承揽人不得擅自更换定作人提供的材料,不得更换不需要修理的零部件。因此,服装厂不应自行更换布料,其行为构成违约行为。A项错误。依《合同法》第264条规定,定作人未向承揽人支付报酬或者材料费等价款的,承揽人对完成的工作成果享有留置权,但当事人另有约定的除外。这一法条规定了承揽人的留置权,并不以材料由定作人提供或者承揽人提供为区分,只要当事人没有相反约定,承揽人在相应条件下均享有留置权。B项错误。依《合同法》第268条规定,定作人可以随时解除承揽合同,造成承揽人损失的,应当赔偿损失。而承揽人并没有对承揽合同的任意解除权。D项正确,C项错误。本题答案为D项。