2012-01-19 8 views
13

私はそれにいくつかのリストボックスを持つscrollviewerを持っています。問題は、ユーザーがマウスをリストビュー上に置いているときにスクロールビューワをスクロールするために中央のマウスローラーを使用する場合です。リストビューは、内部のスクロールビューワをスクロールしてマウスを捕捉し続け、スクロールしているスクロールビューワがスクロールしないようにします。scrollviewerのリストビューはスクロールビューワのスクロールを防ぎます

これをどう対処するかについてのアイデアはありますか?

+0

私は同じ問題があります。ここに議論があります:http://social.msdn.microsoft.com/Forums/en-IE/wpf/thread/b440b2cb-26e0-4115-9858-5679c4e45e0a私は問題を解決すれば教えてくれます。 – Kos

答えて

4

ListView'sScrollBarsを無効にしてみましたか? ListView年代(ListBox年代、実際に)コンテンツテンプレートは単独でScrollViewerとのそのアイテムをラップするので起こる

<ListView ScrollViewer.HorizontalScrollBarVisibility="Disabled" 
      ScrollViewer.VerticalScrollBarVisibility="Disabled" /> 
+0

リストビューに表示可能なアイテムよりも多くのアイテムが含まれている可能性があるため、これを行うことはできません。 – ConditionRacer

+1

@ Justin984彼らは別の 'ScrollViewer'にいませんか? – Rachel

+0

バー、私は少しascii写真を描くつもりでしたが、あまりにも痛みです。リストボックスにはそれぞれ複数のエントリがあります。たとえば、リストボックス1には10個のエントリがあり、リストボックスをスクロールして表示する必要があります。しかし、一緒に、画面のために大きすぎる複数のリストボックスがあるので、私はビューにリストボックスをスクロールするために外側のscrollviewerを持っています。それは理にかなっていますか? – ConditionRacer

30

。リストビュー内のListViewコントロールを持っている場合、ところで同じことが起こる

<ListView> 
     <ListView.Template> 
     <ControlTemplate> 
      <ItemsPresenter></ItemsPresenter> 
     </ControlTemplate> 
     </ListView.Template> 
     ... 
    </ListView> 

(:

最も簡単な方法は、ScrollViewer作成しない内部ListView、1のために独自のTemplateをドロップすることによって、それを無効にすることですこれは私の場合でした)。

+0

これは私を助けました:http://stackoverflow.com/a/2189182/399317 – Kos

0

スクロールビューアで内側のリストビューをラップすると、スクロールが機能します。

<ListView ScrollViewer.VerticalScrollBarVisibility="Auto" ScrollViewer.HorizontalScrollBarVisibility="Disabled"> 
    <ListView.ItemTemplate> 
     <DataTemplate> 
      <ScrollViewer HorizontalScrollBarVisibility="Auto" VerticalScrollBarVisibility="Disabled"> 
       <ListView> 
        <ListView.ItemTemplate> 
         <DataTemplate> 
         </DataTemplate> 
        </ListView.ItemTemplate> 
       </ListView> 
      </ScrollViewer> 
     </DataTemplate> 
    </ListView.ItemTemplate> 
</ListView> 
関連する問題