Skipper Jayawardene (57 not out) and opener Dilshan (50 not out) put on 103 for the second-wicket to help their team achieve a 133-run target with 26 balls to spare in a warm-up match in Colombo.
The Sri Lankan captain smashed two sixes and six fours in his 35-ball knock while Dilshan's 38-ball innings contained one six and five boundaries.
Johnson Charles (30), Darren Bravo (29) and Kieron Pollard (28 not out) were the main scorers for the West Indies, who rested star opener Chris Gayle.
Sri Lanka are in Group C of the preliminary league with South Africa and Zimbabwe. The West Indies are in Group B with Australia and Ireland.
Two teams from each group will advance to the Super Eights round.
In another match in Colombo, wicketkeeper-batsman Niall O'Brien cracked a 49-ball 62 with the help of two sixes and four boundaries to set up Ireland's easy 54-run victory over Zimbabwe.
Ireland scored 181-5 off 20 overs before restricting Zimbabwe to 127-8, with paceman Alex Cusack finishing with 3-6 off three overs and left-arm spinner George Dockrell with 3-28 from four overs.
Kevin O'Brien, brother of Niall, hit a brisk 30 not out off 14 balls while Ed Joyce contributed 29 for Ireland.
Opener Hamilton Masakadza top-scored for Zimbabwe with 44, hitting two sixes and five fours.