"I programmed (I think so anyway) two Legacy locomotives, being sure to have the Program switches turned on, on both the transformer and the locomotives".
You must program each locomotive individually giving it a unique ID. Two of the digits on the locomotive's cab are what I use for the ID. Same goes for each of the 4 channels of the ZWL.
As bmoran4 noted, sounds like your ZWL is now programmed with the same Eng/Tr # as the locomotive(s). In command operation, the ZWL needs to be commanded (with the Cab1L) to ramp up the track voltage from whatever the minimum. When you powered up after programming, the ZWL was supplying a minimum voltage to the track. The Legacy locos need 14 to 18v to run AND a programmed ID that is discrete from any of the ZWL channels.
Put the ZWL into conventional mode, connect the Base1L, and follow the instructions to individually program each locomotive.
If you have conventional locomotives, then you can control them using the Cab1L. This is why the ZWL has a command mode. Follow the instruction to program each of the ZWL's channels. Give each channel a unique ID. Consult the manual to learn how to use the Cab1L to control voltage - there are button sequences you can use to quickly set the track voltage to 18v for command operation of Legacy/TMCC locos.