Their efforts overshadowed a fine century by Bangladesh opener Tamim Iqbal, who hit 125 as the hosts were bowled out for 228.
England eased past their target with four overs to spare.
Collingwood hit an unbeaten 75 after Cook, leading England in the game, laid the foundations with 64.
Prior (30 not out) then joined Collingwood to guide England home.
Tamim made the most of an early let off to complete his third ODI century and provide the fireworks in Bangladesh's innings.
Tamim had made 10 when Morgan dropped him at cover off paceman Ryan Sidebottom [ Images ] and the left-hander went on to hit a century off 94 balls.
Bangladesh 228 in 45.4 overs (T. Iqbal 125; G Swann 3-32)
England 229-4 in 46 overs ( P. Collingwood 75 not out, A. Cook 64; N. Islam 3-49).