Left-hand bastman Perera was forced to retire hurt on 47, following a hamstring injury in Sri Lanka's 7-wicket victory over India at the Oval on Thursday.
According to the official Sri Lanka Cricket website on Saturday, the ICC event technical committee comprising Geoff Allardice, Campbell Jamieson, Steve Elworthy, Alan Fordham, Sourav Ganguly and Michael Slater confirmed Dhananjaya's replacement.
De Silva has represented Sri Lanka in 16 ODIs scoring 334 runs and taking four wickets.
Pakistan's Victory over India in CT2017 Final was Special
Bowlers failed India, reckons off-spinner Harbhajan Singh
Latest ODI Team Rankings Post Champions Trophy 2017
Sarfraz Ahmed named captain of ICC Champions Trophy 2017 Team
New No.6 Pakistan inch closer to 2019 World Cup direct entry
Gautam Gambhir slams Kashmiri separatist for lauding Pakistan
Pakistan a serious contender for 2019 World Cup, feels Shahid Afridi
CT2017: Top 5 Bowlers
CT2017: Top 5 Batsmen
Pakistan beat India to lift Champions Trophy (Highlights)