title: Update single row in a WPF DataGrid
body: <p>I'm creating a download manager, and my WPF <code>DataGrid</code> is bound to a collection of objects representing ongoing downloads (in separate threads). When I have multiple downloads running, each one is using this code to update its <code>DataGrid</code> item every second:</p>
  <pre><code>if (DateTime.Now &gt; download.LastUpdateTime.AddSeconds(1))
  {
      this.downloadsGrid.Items.Refresh();
      download.LastUpdateTime = DateTime.Now;
  }
  </code></pre>
  <p><code>Datagrid.Items.Refresh()</code> does the job, but it reconstructs the whole <code>DataGrid</code> , causing all downloads to update each others <code>DataGrid</code> rows several times in one second, and I don't want that kind of behavior. Is there any way to refresh a specific row (item) in a <code>DataGrid</code>?</p>