title: WPF: Binding to array using ItemsControl
body: <p>When using <code>ItemsControl</code> to bind to a property of type <code>List&lt;byte&gt;</code>, I get the correct values in one direction (displayed using a <code>TextBox</code> with a hexadecimal <code>StringConverter</code>), but changing the value has no effect (i.e. the source is not updated). Binding mode is the default. Changing the property to be a <code>ObservableCollection</code> instead of a list has no effect. (The problem is independent of whether the <code>StringConverter</code> is used or not.)</p>
  
  <p>The item template (working in the source-to-display direction) I'm using below.</p>
  
  <pre><code>            &lt;ItemsControl
                  ItemsSource="{Binding Context.ContentBytes}"&gt;
  
                  &lt;!-- Container configuration --&gt;
                  &lt;ItemsControl.ItemsPanel&gt;
                      &lt;ItemsPanelTemplate&gt;
                          &lt;UniformGrid Columns="8" /&gt;
                      &lt;/ItemsPanelTemplate&gt;
                  &lt;/ItemsControl.ItemsPanel&gt;
  
                  &lt;ItemsControl.ItemTemplate&gt;
                      &lt;DataTemplate&gt;
                          &lt;TextBox
                              Margin="5,5,5,5"
                              Text="{Binding .}" /&gt;
                      &lt;/DataTemplate&gt;
                  &lt;/ItemsControl.ItemTemplate&gt;
  
              &lt;/ItemsControl&gt;
  </code></pre>
  
  <p>The property I'm binding to is defined as <code>public ObservableCollection&lt;byte&gt; ContentBytes { get; set; }</code> .</p>