2010-12-15 8 views
4

Win 7で動作するWPFアプリケーションがあります.Wind 7のタッチジェスチャーを使用すると、リストビューをスクロールしながら、リストの最後が達成された。Windows 7 Touch Screen "Shrug"

これはInternet Explorerでも再現できます。スクロールバーを生成するのに十分な長さのWebページをロードすると、Windowsはタッチジェスチャーでスクロールしながらページの下部に達するとIEを「肩をすくめます」。

私のWPFアプリでコードを使ってWindowsでうねりを止めたり、何らかの方法でそれを無効にする方法はありますか?私は触れ続ける必要があります、ちょうどおしゃぶりをオフにします。

+0

また、私は追加する必要があります、私はアプリがあるときにのみ、これを行いだと思うが全画面表示。 –

+1

これは[境界フィードバック](http://msdn.microsoft.com/en-us/library/dd371416.aspx)と呼ばれ、独自のウィンドウでは無効にする必要があります。システム全体についてはわかりません。 –

答えて

4

ManipulationBoundaryFeedback(すなわちe.Handled = true)を処理します。

1

システム全体で境界フィードバックを無効にすることができます。

「ペンアンドタッチ」コントロールパネルの「パンニング」タブにあります。

http://www.youtube.com/watch?v=OObTOSglE1w

3

ウィンドウ内のすべてのコントロールの境界線を無効にする場合は、ウィンドウ自体ではなく、ウィンドウの最初のパネルにManipulationBoundaryFeedbackハンドルを配置する必要があります。

は動作しません:

<Window x:Class="TestControls.BoundaryFeedback" 
     xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
     ManipulationBoundaryFeedback="Control_ManipulationBoundaryFeedback" 
     > 
</Window> 

作品:背後にあるコードで

<Window x:Class="TestControls.BoundaryFeedback" 
     xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
     > 
    <Grid ManipulationBoundaryFeedback="Control_ManipulationBoundaryFeedback"> 
    </Grid> 
</Window> 

private void Control_ManipulationBoundaryFeedback(object sender, ManipulationBoundaryFeedbackEventArgs e) 
{ 
    e.Handled = true; 
} 
+1

素晴らしい!私はこの問題に長い間苦労していました。これをWindowで処理することはうまくいきません。 – Jens