title: Changing Position of an Element Programmatically in WPF
body: <p>I did not knew that this simple thing would be slightly complicated. I have a Canvas in which I am trying to add Ellipse dynamically. Here is the code: </p>
  
  <pre><code>&lt;StackPanel&gt;
  
          &lt;Canvas Name="canvas" Background="LightBlue" Margin="5" Width="250" Height="250"&gt;
  
          &lt;/Canvas&gt;
  
          &lt;Button Content="Draw Images" Click="Button_Click" Width="100" Margin="10" /&gt;
  
      &lt;/StackPanel&gt;
  </code></pre>
  
  <p>And here is the code behind: </p>
  
  <pre><code>private void Button_Click(object sender, RoutedEventArgs e)
          {
              Ellipse ellipse = new Ellipse();
              ellipse.Fill = Brushes.Red;
              ellipse.Width = 10;
              ellipse.Height = 10;
  
              ellipse.SetValue(Canvas.LeftProperty,100);
              ellipse.SetValue(Canvas.TopProperty,100);
  
              canvas.Children.Add(ellipse); 
  
  
          }
  </code></pre>
  
  <p>For some reason it throws the exception that 100 is not a valid value!</p>