title: WPF ToggleButton.IsChecked binding does not work
body: <p>is there an issue with two way binding to the IsChecked property on a ToggleButton in .NET 3.5?  </p>
  
  <p>I have this XAML:  </p>
  
  <pre><code> &lt;ToggleButton 
                      Name="tbMeo"
                      Command="{Binding FilterOnSatelliteTypeCmd}" 
                      IsChecked="{Binding ShowMeoDataOnly, Mode=TwoWay}"
                      ToolTip="Show MEO data only"&gt;
                      &lt;Image Source="../images/32x32/Filter_Meo.png" Height="16" /&gt;
                  &lt;/ToggleButton&gt;
  </code></pre>
  
  <p>I have a ViewModel with the following property:</p>
  
  <pre><code> private bool _showMeoDataOnly;
      public bool ShowMeoDataOnly
      {
          get { return _showMeoDataOnly; }
          set
          {
              if (_showMeoDataOnly != value)
              {
                  _showMeoDataOnly = value;
                  RaisePropertyChangedEvent("ShowMeoDataOnly");
              }
          }
      }
  </code></pre>
  
  <p>If I click on the ToggleButton, the value of ShowMeoDataOnly is set accordingly.  However, if I set ShowMeoDataOnly to true from code behind, the ToggleButton's visual state does not change to indicate that IsChecked is true.  However, if I manually set the ToggleButton's IsChecked property instead of setting ShowMeoDataOnly to true in code behind, the button's visual state changes accordingly.</p>
  
  <p>Unfortunately, switching over to .NET 4/4.5 is not an option right now, so I cannot confirm if this is a .NET 3.5 problem.  </p>
  
  <p>Is there anything wrong with my code?</p>