所以我试图在画布上放下一个形状的副本。 我的EventHandlers位于MainPage.xaml.cs上。 然后我正在使用另一个类来处理拖动,丢弃等。 然后我扩展shape类来创建一个副本并返回它。一切正常,除了矩形在画布上,事件不起作用。 (因为他们没有在xaml.cs中定位事件)我该如何解决这个问题?谢谢!
// In my drag/drop class I add the control
_cContainer.Children.Add(s.AsRectangle(_tContainer));
// In my extension of the shape class
public static Rectangle AsRectangle(this Shape s, Canvas c)
{
Rectangle r = new Rectangle() {
Fill = s.Fill,
Height = s.Height,
Width = s.Width
};
r.MouseLeftButtonDown += new MouseButtonEventHandler(Handle_MouseDown);
r.MouseMove += new MouseEventHandler(Handle_MouseMove);
r.MouseLeftButtonUp += new MouseButtonEventHandler(Handle_MouseUp);
Canvas.SetLeft(r, s.GetLeft() - c.Width);
Canvas.SetTop(r, s.GetTop());
return r;
}