zoukankan      html  css  js  c++  java
  • WP7开发积累

    1. 在编写Pivot中的ListBox的Item项的时候,LeftButtonDown 或者LeftButtonUp事件效果都不是很理想,都容易在滑动的时候触发。

    因此改为对触摸事件的处理,没有滑动则相当于点击。

    private Point? startPoint;
    private void StackPanel_ManipulationStarted(object sender, ManipulationStartedEventArgs e)
    {
    startPoint
    = e.ManipulationOrigin;
    base.OnManipulationStarted(e);
    }

    private void StackPanel_ManipulationDelta(object sender, ManipulationDeltaEventArgs e)
    {
    if (startPoint.HasValue)
    {
    if (Math.Abs(e.DeltaManipulation.Translation.X) > 0 || Math.Abs(e.DeltaManipulation.Translation.Y) > 0)
    {
    this.startPoint = null;
    }
    }
    base.OnManipulationDelta(e);
    }

    private void StackPanel_ManipulationCompleted(object sender, ManipulationCompletedEventArgs e)
    {
    if (startPoint.HasValue)
    {
    if (Math.Abs(e.TotalManipulation.Translation.X) == 0 && Math.Abs(e.TotalManipulation.Translation.Y) == 0)
    {

    FrameworkElement touchedControl;
         //判断自己点击是什么控件从而做出不同的判断。  
              if (e.OriginalSource is TextBlock)
                    {

    }

    else if (e.OriginalSource is Image)
    {

    }
    }
    }
    base.OnManipulationCompleted(e);
    }

      但是上面有一个问题就是因为具体控件占的地方很小,因此实际到设备上调试就会发现很难点击进入,这里有一个技巧就是把它的父容器比如Grid,stackPanel这些的Background 改为 Transparent 这样的话效果就会很好了!

  • 相关阅读:
    Mac上安装Git
    原型对象和原型链
    ES6入门
    一边宽度固定,一边宽度自适应
    15种css居中方式
    阿里CDN核心技术解密
    尽量用const,enum,inline代替define
    Nginx安装
    百度笔试题:malloc/free与new/delete的区别(转)
    C++内存管理(转)
  • 原文地址:https://www.cnblogs.com/jeekun/p/2159213.html
Copyright © 2011-2022 走看看