The 27-year-old has not yet been capped by the Dutch national team but was called up to the squad for the first time last year.
He has now joined former Sporting Lisbon boss Marco Silva, who reportedly tried to sign him when he was in charge at Hull City last season, but has not brought him to Vicarage Road.
It is understood the Hornets and Sporting Lisbon agreed on a fee of around £3m for the left-back.
Zeegelaar will provide some competition for Jose Holebas, who was the only senior left-back in the squad before the Dutchman's arrival and was suspended for his side's 0-0 draw with Brighton last Saturday.