指で触れて画像をスライドさせたいSilverlightアプリケーションを搭載したWindowsPhone7を開発していますが、その方法を教えてもらえますか?
1 に答える
1
タッチ イベントによって行われた変更に関する情報を送信する ManipulationDelta イベントをサブスクライブする必要があります。例えば:
<Image ManipulationDelta="abc_ManipulationDelta" Height="100" Width="100" Name="abc" Source="smiley.jpg" Stretch="Fill"/>
これで、イベント ハンドラーは次のようになります。
private void abc_ManipulationDelta(object sender, ManipulationDeltaEventArgs e)
{
abc.Margin = new Thickness(abc.Margin.Left +e.DeltaManipulation.Translation.X,
abc.Margin.Top + e.DeltaManipulation.Translation.Y,
abc.Margin.Right, abc.Margin.Bottom);
}
はe.DeltaManipulation.Translate
、タッチ ジェスチャの X 方向と Y 方向のシフト量を通知します。画像コントロールの余白をその量だけ変更しました。下向きのドラッグがある場合、Translate.Y は +ve です。つまり、トップ マージンが増加し、上向きのドラッグでは反対のことが起こります。より複雑なマージンの変更を使用して、より良いドラッグ効果を生み出すことができますが、この回答はテクニックに関する基本的なアイデアを提供します.
于 2012-07-14T15:53:49.890 に答える