title: WPF checkbox IsChecked property does not change according to binding value
body: <p>here is my code:</p>
  
  <p>xaml side:
  I use a data template to bind with item "dataType1"</p>
  
  <pre><code>&lt;DataTemplate DataType="{x:Type dataType1}"&gt;
      &lt;WrapPanel&gt;
          &lt;CheckBox IsChecked="{Binding Path=IsChecked, Mode=TwoWay}" Command="{Binding Path=CheckedCommand} /&gt;
          &lt;TextBlock Text="{Binding Path=ItemName, Mode=OneWay}" /&gt;
      &lt;/WrapPanel&gt;
  &lt;/DataTemplate&gt;
  </code></pre>
  
  <p>then I create a ComboBox with item with type "dataType1"</p>
  
  <pre><code>&lt;ComboBox Name="comboBoxItems" ItemsSource="{Binding Path=DataItems, Mode=TwoWay}"&gt;
  </code></pre>
  
  <p>and here is dataType1 difinition:</p>
  
  <pre><code>class dataType1{public string ItemName{get; set;} public bool IsChecked {get; set;}}
  </code></pre>
  
  <p>the scenario is I prepare a list of dataType1 and bind it to the ComboBox, ItemName display flawlessly while CheckBox IsChecked value is always unchecked regardless the value of "IsChecked" in dataType1.</p>
  
  <p>Is special handling needed in binding IsChecked property in CheckBox in wpf?</p>
  
  <p>Peter Leung</p>