C#的WPF怎样让一个按钮控件根据程序里的一个布尔值变更背景色?

C#WPF编程时怎样让一个按钮空间的背景色根据程序里的一个布尔值改变按钮的背景色,比如布尔值为true时让背景色变红色,有哪些方法?

1.写个timer不停根据bool值去修改背景色
2.不要直接用bool值,而应该是个属性,这样你就有get和set方法可以用,在set里更新按钮的背景色
3.把bool值封装进类里,然后写个事件,侦听事件,在事件函数里写修改背景色