>>878
多分↓のどちらかのパターンだと思うけど的が外れてたらすまん。

(1)
interface ICheckAction { void On(); void Off(); }
class SomeClass {
  ICollection<ICheckedAction> Actions { get; }
  void DoAction() {
    if (checkBox.IsChecked) {
      foreach (var action in Actions) action.On();
    }
    else {
      foreach (var action in Actions) action.Off();
    }
  }
}

(2)
interface ICheckState { void DoAction(); }
class SomeClass {
  IChekcState On { get; set; }
  IChekcState Off { get; set; }
  void DoAction() {
    if (checkBox.IsChecked) {
      On.DoAction();
    }
    else {
      Off.DoAction();
    }
  }
}