RenderTranform 不渲染转换
RenderTranform not render transforming
所以我有一个 canvas 和一个椭圆。并像这样调用一个方法来移动椭圆
public void moveElipse1ToCoordinate(Point point)
{
Action action = () =>
{
TranslateTransform moveTo = new TranslateTransform();
moveTo.X = point.X;
moveTo.Y = point.Y;
StimulyEllipse1.RenderTransform = moveTo;
};
Dispatcher.BeginInvoke(action);
}
我在 for 循环中使用了这个函数。
for(int i=0 ; i<=1000; i++)
moveElipse1ToCoordinate(new Point(i,i)
X 和 Y 坐标都在 0 和 1000 之间,即 canvas 的大小。然而根本没有显示椭圆。
这次通话我错过了什么?
如果你想让它像动画一样流畅地移动,你需要专门使用动画类。 UI 在循环完成之前不会更新(并且 X、Y 的大小为 canvas,椭圆将出现在总 canvas 的下方和右侧).
所以我有一个 canvas 和一个椭圆。并像这样调用一个方法来移动椭圆
public void moveElipse1ToCoordinate(Point point)
{
Action action = () =>
{
TranslateTransform moveTo = new TranslateTransform();
moveTo.X = point.X;
moveTo.Y = point.Y;
StimulyEllipse1.RenderTransform = moveTo;
};
Dispatcher.BeginInvoke(action);
}
我在 for 循环中使用了这个函数。
for(int i=0 ; i<=1000; i++)
moveElipse1ToCoordinate(new Point(i,i)
X 和 Y 坐标都在 0 和 1000 之间,即 canvas 的大小。然而根本没有显示椭圆。
这次通话我错过了什么?
如果你想让它像动画一样流畅地移动,你需要专门使用动画类。 UI 在循环完成之前不会更新(并且 X、Y 的大小为 canvas,椭圆将出现在总 canvas 的下方和右侧).