title: How can a WPF Canvas child's attached top/bottom/left/right property be removed?
body: <p>Perhaps I am missing something simple here, but I am unable to find a method to remove an attached property from a item contained by a canvas.</p>
  
  <p>Code example:</p>
  
  <pre><code>//Add an image to a canvas; set the location to the top
  theCanvas.Children.Add(theImage);
  Canvas.SetTop(theImage, 0);
  
  //Move the image to the bottom of the canvas
  Canvas.SetBtoom(theImage, 0);
  </code></pre>
  
  <p>This doesn't work since the Top attached property takes precedence over Bottom attached property; so we try to "unset" the top attached property</p>
  
  <pre><code>//Move the image to the bottom of the canvas
  Canvas.SetTop(theImage, DependencyProperty.UnsetValue);
  Canvas.SetBtoom(theImage, 0);
  </code></pre>
  
  <p>...and the compiler complains that UnsetValue can't be converted to a double.</p>
  
  <p>What am I missing here and how do we remove the Top attached property?</p>