0

画面上でタッチした特定の X、Y 位置に画像を自動的に移動するにはどうすればよいですか?

ManipulationStarted を使用してみましたが、これは機能しません。

これは私のコードです:

XML:

     <StackPanel x:Name="TitlePanel" Grid.Row="0" Margin="12,17,0,28">
        <TextBlock x:Name="txttouch" Text="MY APPLICATION" Style="{StaticResource PhoneTextNormalStyle}" Margin="12,0"/>
        <TextBlock x:Name="txtpoint" Text="page name" Margin="9,-7,0,0" Style="{StaticResource PhoneTextTitle1Style}"/>
    </StackPanel>

    <!--ContentPanel - place additional content here-->
    <Grid x:Name="grid1" Grid.Row="1" Margin="12,0,12,0">
        <Image x:Name="imagenew"  Source="1.png" Height="30" Width="30">
            <Image.RenderTransform>
                <TranslateTransform x:Name="transimage"/>
            </Image.RenderTransform>
        </Image>


    </Grid>

  </Grid>

そしてC#:

private void ManipulationStartedonGrid(object sender,system.Windows.Input.ManipulationStartedEventArgs e)

        {
            transimage.X = e.ManipulationOrigin.X;
            transimage.Y = e.ManipulationOrigin.Y;
        }
4

2 に答える 2

0

Canvas では、子の位置を明示的に設定できます。

<Grid x:Name="grid1" Grid.Row="1" Margin="12,0,12,0">
  <Canvas>
    <Image x:Name="imagenew"  Source="1.png" Height="30" Width="30">
        <Image.RenderTransform>
            <TranslateTransform x:Name="transimage"/>
        </Image.RenderTransform>
    </Image>                             
   </Canvas>
</Grid>

コード セットの座標では、次のものが必要です。

Canvas.SetLeft(imagenew, leftCoord);
Canvas.Settop(imagenew, topCoord);
于 2013-06-10T09:56:41.117 に答える