none
ManipulationDelta 事件在鼠标模式与手絷下的处理异常 RRS feed

  • 问题

  • HI:

         1)我使用ManipulationDelta在模拟器上运行,选择鼠标, 激发事件时出现异常 “未经处理的WIN32异常”。

         2)我使用ManipulationDelta在本地计算机上运行,选择鼠标, 激发事件时也出现异常 “未经处理的WIN32异常”。

         3)我使用ManipulationDelta在模拟器上运行,选择手絷, 运行正常。

         4)如果我想区分当前是鼠标模式还是手絷模式,请帮助?

        XAML:   

            ManipulationDelta="Panel_ManipulationDelta_1" ManipulationMode="None"

         这里的ManipulationMode 不管选择那个值,在鼠标模式下,都会出异常,在手絷模式下可以使用。

         


    maming 这是多么有趣的一件事情,如果这是说开发WIN8 APP的话

    2012年11月29日 7:13

全部回复

  • Hi,

    能把代码贴一下吗?我这里没有出现问题。


    Aaron
    MSDN Community Support | Feedback to us
    Develop and promote your apps in Windows Store
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    2012年12月4日 6:09
    版主
  • XAML:

            <ListView    x:Name="BingMapCityView"
                             ManipulationDelta="Panel_ManipulationDelta_1" ManipulationMode="None"
                              Tapped="BingMapCityView_Tapped_1"              
                               SelectionMode="Single"
                                BorderBrush="{x:Null}"  
                               SelectionChanged="BingMapCityView_SelectionChanged_1"
                               ItemsSource="{Binding BingMapView}"
                               ItemContainerStyle="{StaticResource ListViewItemStyle1}"
                               ItemTemplate="{StaticResource BingMapListViewTemplate}"
                               ManipulationCompleted="BingMapCityView_ManipulationCompleted_1"
                                Background="{x:Null}"  
                               HorizontalAlignment="Left"                
                               Margin="10,48,0,0"
                               VerticalAlignment="Top"
                          
                               Width="450"
                               Grid.Row="1"/>

    C#:

         

      private void BingMapCityView_ManipulationCompleted_1(object sender, ManipulationDeltaRoutedEventArgs e)
            {

                //if (e.Delta.Translation.X >= 20 && !Panel.IsOpen)
                //{

                //    LoadPanel.Begin();
                //    Panel.IsOpen = true;
                //}
           
           
            }

       我把代码全部注释掉,在本地计算机运行时,还是出现异常,用模拟器手势就OK

        4)如果我想区分当前是鼠标模式还是手絷模式,请帮助?   这个问题我也想知道答案,谢谢XUE


    maming 这是多么有趣的一件事情,如果这是说开发WIN8 APP的话

    2012年12月5日 7:53
  • 抱歉,回复晚了。

    ManipulationCompleted事件中并不能得到Delta这个移动的数值,一般用这个事件来获取手势操作结束的位置来触发一些事件。

    实际上并没有必要去分这个问题的必要。因为针对用户输入并不是区分手势,鼠标,手写笔分类进行开发的,而是将他们合在一起进行响应。你可以看一下这篇文章,官方介绍了一些用户响应的做法及设计:

    http://msdn.microsoft.com/en-US/library/windows/apps/xaml/Hh465397(v=win.10)


    Aaron
    MSDN Community Support | Feedback to us
    Develop and promote your apps in Windows Store
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    2012年12月7日 8:21
    版主
  • 抱歉,回复晚了。

    ManipulationCompleted事件中并不能得到Delta这个移动的数值,一般用这个事件来获取手势操作结束的位置来触发一些事件。

    实际上并没有必要去分这个问题的必要。因为针对用户输入并不是区分手势,鼠标,手写笔分类进行开发的,而是将他们合在一起进行响应。你可以看一下这篇文章,官方介绍了一些用户响应的做法及设计:

    http://msdn.microsoft.com/en-US/library/windows/apps/xaml/Hh465397(v=win.10)


    Aaron
    MSDN Community Support | Feedback to us
    Develop and promote your apps in Windows Store
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    抱歉,回复晚了。

      我还是不太明白 ,我是要轻扫事件,


    maming 这是多么有趣的一件事情,如果这是说开发WIN8 APP的话

    2012年12月13日 7:39