我希望有一个图像的旋转,但我不想在Codebehind中编码事件,而是在视图模型中。 到现在一切正常,但代码在CodeBehind ... (它基于this教程)
我试过
XAML:
[...]
ManipulationDelta="{Binding RotateManipulationDelta}"
[...]
<RotateTransform x:Name="{Binding RotateTransform}" />
视图模型:
private void RotateManipulationDelta(object sender, ManipulationDeltaRoutedEventArgs e)
{
// Alternatively, use Triangle Cosines Law.
// It uses just one trigonometric function (Acos), but you first need to calculate the lengths of all sides.
var x = this.RotateTransform.CenterX - e.Position.X;
var y = this.RotateTransform.CenterY - e.Position.Y;
double a1 = Math.Atan(y / x);
double a2 = Math.Atan((e.Delta.Translation.Y - y) / (x - e.Delta.Translation.X));
this.RotateTransform.Angle += a1 - a2;
}
但是C#显然不知道“RotateTransform”或Method本身。 有没有可能这样做?我没有线索。 请尝试尽可能简单地解释它。我刚开始使用Windows Apps和XAML。 :d
我希望你能帮助我。
答案 0 :(得分:0)
您可能希望查看类似Storyboarded animations for visual states或此XAML animation的内容。
我不明白你为什么要做这样的事情......你能给我们更多的信息吗?在C#中比在XAML中更容易实现。背后的代码就是做那些事情。