通过改变子窗体Canvas中的thumb控件的margin位置给父窗体Grid控件的margin赋值,一直出错,代码如下:
MainWindow mw = (MainWindow)this.Owner;
mw.photogrid.Width = this.thumb.Width; mw.photogrid.Height = this.thumb.Height; mw.photogrid.Margin = new Thickness(Canvas.GetTop(thumb), Canvas.GetLeft(thumb), 0, 0);
坐标转换后,解决:
Canvas.SetLeft(thumb, Canvas.GetLeft(thumb) + e.HorizontalChange);
Canvas.SetTop(thumb, Canvas.GetTop(thumb) + e.VerticalChange); MainWindow mw = (MainWindow)this.Owner; Point p = thumb.PointToScreen(new Point());//将坐标转为屏幕坐标 mw.photogrid.Margin = new Thickness(p.X,p.Y,0,0); mw.photogrid.Width = this.thumb.Width; mw.photogrid.Height = this.thumb.Height; |
|