C# 如何将元素放置到Silverlight的位置?
我想画一个矩形来定位我从startPoint得到的东西,但现在它把我的矩形放在PictureCavas的中间,当我想把它放在startPoint位置时C# 如何将元素放置到Silverlight的位置?,c#,silverlight,layout,C#,Silverlight,Layout,我想画一个矩形来定位我从startPoint得到的东西,但现在它把我的矩形放在PictureCavas的中间,当我想把它放在startPoint位置时 private void DragSelectComponent_SelectionEnd(DragSelectEventArgs e) { Output.Text = "Start: " + e.StartPoint.ToString() + " End: " + e.EndPoint.ToString() + "\n(" +
private void DragSelectComponent_SelectionEnd(DragSelectEventArgs e)
{
Output.Text = "Start: " + e.StartPoint.ToString() + " End: " + e.EndPoint.ToString() + "\n(" + e.EventType + ")\n";
Rectangle rectangle = new Rectangle() { Width = e.EndPoint.X - e.StartPoint.X, Height = e.EndPoint.Y - e.StartPoint.Y, Fill = new SolidColorBrush(Colors.Purple) };
PictureCanvas.Children.Add(rectangle);
}
您是否尝试过:
rectangle.SetValue(Canvas.LeftProperty, p.X);
rectangle.SetValue(Canvas.TopProperty, p.Y);
只需使用:-
Rectangle rectangle = new Rectangle() { Width = e.EndPoint.X - e.StartPoint.X, Height = e.EndPoint.Y - e.StartPoint.Y, Fill = new SolidColorBrush(Colors.Purple) };
Canvas.SetLeft(rectangle, e.StartPoint.X);
Canvas.SetTop(rectangle, e.StartPoint.Y);
PictureCanvas.Children.Add(rectangle);
它不起作用,由于某种原因,我的长方形仍然在画中画,你肯定“画报”实际上是画布吗?您确信事件ARG中的矩形没有描述画布中间的矩形吗?PICTURRANVAS是网格元素。它应该是Canvas元素吗?Canvas Left和Top属性只有当您将项目放置在画布上时才有意义。