This time they could win and the sense is of a team that is still starting out.
Root's innings was his highest in one-day internationals, surpassing his 125 against South Africa at Centurion previous year.
Liam Plunkett (four for 59) was England's banker with the ball here, after Woakes left the field having bowled only two overs, but a longer-term replacement may well be required over the next two-and-a-half weeks.
Captain Eoin Morgan, who smashed an unbeaten 75, was all praise for Root, who remained unbeaten on 133.
Stokes made up most of the shortfall as it became clear Woakes would not bowl again, but Root's part-time spin was needed too.
Bangladesh did not waste a good start and their top and middle-order batsmen contributed well for the cause. England takes on New Zealand in their next group match while Bangladesh will play Australia in a must-win for them to have a chance to progress to the Semi-Finals.
Probably we would have liked to take more wickets.
After 50 overs, Bangladesh end innings on 305/6.
However, he claimed the wicket of Shakib Al Hasan the Bangladesh innings stuttered to a close, Plunkett picking up his fourth wicket in the final over.
5 Centuries across formats for Tamim against England - three in Tests and two in ODIs - his most against any opposition.
But as the runs kept coming, an increasingly frustrated Stokes exchanged words with Tamim and mockingly patted him on the shoulder at the end of the 32nd over, with umpires Rod Tucker and S Ravi intervening to calm tempers.
A single against off-spinner Ali saw Tamim reach his ninth ODI century in 124 balls. The 28-year-old batsman, who slammed 11 boundaries and two sixes, was caught at deep mid-wicket by substitute fielder Sunzamul Islam.
0 Number of 300-plus totals by Bangladesh against England before this game. Where he might have played straight, Roy tried to scoop Mashrafe Mortaza behind square but was caught at short fine-leg. As a score in the mid-300s looked possible, the pair fell in consecutive deliveries and Sabbir Rahman's 15-ball 24 dragged them to 305-6.
Stokes was bowling the 32nd over against Bangladesh and on the third delivery, Tamim guided the ball to the third man boundary.
Joe Root and Alex Hales (95) managed to steady the ship after the early loss, taking the score to 165-1, before the latter narrowly missed out a century when he was dismissed by Sabbir Rahman.
- President Trump Withdraws from Paris Climate Accord: "Handicaps US Economy"
- Patty Jenkins on her 13-year journey to make 'Wonder Woman'
- What to watch for in NBA Finals
- Google celebrates commencement of ICC Champions Trophy 2017 with an interactive doodle
- States seek to fill the void after Trump dumped the climate pact
- Lexington student advances in Scripps National Spelling Bee
- Coach Steve Kerr possible to return in NBA Finals, sources say
- Exiting Paris, Trump leaves deal shaped by U.S. priorities
- Donald Trump likely to withdraw from Paris climate deal
- Golden State, Cleveland Ready To Play For NBA Crown