Dillon Dube scored, and David Rittich made 26 saves for the Flames (13-12-4), who are 3-0-1 in their past four games after a six-game losing streak (0-5-1).
"We've gotten seven out of the last eight points here and we want to get that good feeling going again," Calgary forward Milan Lucic said. "How you get that good feeling going again is working hard, playing good defense."
WATCH: [All Senators vs. Flames highlights]
Geoff Ward got the win in his first game since being named Flames interim coach. He replaced Bill Peters, who resigned on Friday, three days after the NHL and Flames announced they were investigating a claim Peters directed a racial slur at a player while coaching in the American Hockey League during the 2009-10 season. Ward, who had been Calgary associate coach, filled in for Peters in a 3-2 overtime win at the Buffalo Sabres on Wednesday.
"We're more solution-oriented than frustration-oriented where some points earlier it may have been the case," Ward said. "We're moving in the right direction and I think guys are starting to see that their play is turning up and they're able to feel good about that, they're finding ways to feel good about it, they're finding ways to support each other, and as a result the mood on the bench has been real, real good."
Jean-Gabriel Pageau scored, and Marcus Hogberg made 24 saves for the Senators (11-15-1), who have been outscored 13-4 during a four-game losing streak.
"We're obviously trying to get back to winning some hockey games," Pageau said. "We want to get back to getting that vibe, that swagger of winning hockey games. I think that's what we're trying to build right now, keep building our identity and our culture. I like that everyone is pushing in the same direction right now."