【问题标题】:Dragging a Grid and increasing its width拖动网格并增加其宽度
【发布时间】:2015-08-31 11:15:37
【问题描述】:

如何在 Windows Phone 8.1 中拖动 Grid 元素并根据拖动距离增加其宽度?假设我有一个50px 宽网格元素,我将它拖到屏幕上的400px 位置;我希望它相应地缩放,并以与拖动相同的速度。

我正在尝试为此创建一个情节提要,并且我能够操纵宽度,但是如何改变动画的速度以匹配拖动的速度?另外,如何使宽度取决于指针的位置?

【问题讨论】:

    标签: xaml windows-phone-8.1 winrt-xaml


    【解决方案1】:

    您不需要使用情节提要。请参阅下面的代码。

    XAML:

       <Grid x:Name="FlippedGrid" HorizontalAlignment="Left" ManipulationMode="TranslateX" ManipulationDelta="FlippedGridOnManipulationDelta"  Width="60" Height="100" Background="Aquamarine"/>
    

    别忘了设置 ManipulationMode!

    CS:

    private void FlippedGridOnManipulationDelta(object sender, ManipulationDeltaRoutedEventArgs e)
    {
        var delta = e.Delta.Translation.X;
    
        FlippedGrid.Width += delta;
    
        //TODO If you want check position, retrieve e.Position:
        //var position = e.Position;
    
        //TODO If you want change flip velocity
        //double velocity = 1.5;
        //FlippedGrid.Width += delta * velocty;
     }
    

    【讨论】:

    • 是的,我想通了,最后只使用了这个。谢谢
    猜你喜欢
    • 2021-05-09
    • 2011-09-17
    • 2013-11-11
    • 2014-11-12
    • 2015-12-14
    • 2011-04-19
    • 2012-01-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多