我正在使用 C# 和 XAML 开发一个 Windows Store 应用程序,其中我在用户屏幕上显示了一个图像。在某些事件中,我想将其在屏幕上的位置更改为我选择的坐标。
我努力了
Canvas.SetLeft(selectedImage, screenCoords.X);
Canvas.SetTop(selectedImage, screenCoords.Y);
和
selectedImage.SetValue(Canvas.LeftProperty, screenCoords.X);
selectedImage.SetValue(Canvas.TopProperty, screenCoords.Y);
但他们没有工作。在此之后我也尝试过更新布局。谁能告诉我我到底做错了什么?
这是 XAML 代码:
<FlipView.ItemTemplate>
<DataTemplate>
<Grid x:Name="cv">
<Image x:Name="img1" Source = "{Binding ModelImage}" Stretch="Fill" Tag="{Binding ModelTag}" Tapped="ModelTapped"/>
<Image x:Name="hat" Source = "{Binding HatImage}" Width="{Binding HatWidth, Mode=TwoWay}" Height="{Binding HatHeight, Mode=TwoWay}" Stretch="Fill" ManipulationMode="All" ManipulationDelta="ResourceImage_ManipulationDelta" Tapped="imageTapped" Tag="{Binding hatTag}" Canvas.ZIndex="3">
<Image.RenderTransform>
<CompositeTransform />
</Image.RenderTransform>
</Image>
</Grid>
</DataTemplate>
</FlipView.ItemTemplate>
我在名为“cv”的网格中有几张图像,为简单起见将它们删除。上面 C# 代码中的 selectedImage 是网格“cv”中的图像之一。