2009-09-10 7 views
2

Je tente de positionner un rectangle dans un InkCanvas. J'utilise la méthode suivante. Malheureusement, lorsque j'ajoute le rectangle, il s'affiche au (0,0). Bien que lorsque je demande à voir si la propriété gauche est 0, j'obtiens des valeurs non nulles. Est-ce que quelqu'un sait pourquoi cela pourrait être?Positionnement WPF absolu dans InkCanvas

Cheers,

Nilu

InkCanvas _parent = new InkCanvas(); 
private void AddDisplayRect(Color annoColour, Rect bounds) 
    { 
     Rectangle displayRect = new Rectangle(); 
     Canvas.SetTop(displayRect, bounds.Y); 
     Canvas.SetLeft(displayRect, bounds.X); 

     // check to see if the property is set 
     Trace.WriteLine(Canvas.GetLeft(displayRect)); 
     displayRect.Width = bounds.Width; 
     displayRect.Height = bounds.Height; 
     displayRect.Stroke = new SolidColorBrush(annoColour); 
     displayRect.StrokeThickness = 1; 

     _parent.Children.Add(displayRect);    
    } 

Répondre

4

Enfin en mesure de comprendre. Je me sens un peu stupide aussi. Au lieu de Canvas.SetTop() besoin d'utiliser InkCanvas.SetTop.

Questions connexes