Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 用于ItemsControl的类似列表框的触摸滚动_C#_Wpf_Touch - Fatal编程技术网

C# 用于ItemsControl的类似列表框的触摸滚动

C# 用于ItemsControl的类似列表框的触摸滚动,c#,wpf,touch,C#,Wpf,Touch,WPF列表框内置了一些非常好的触摸滚动功能,我想在一个简单的ItemsControl上使用这些功能 我强烈希望使用现有的功能来实现这一点,因为我以前的工作(使用触地/移动/向上事件)没有ListBox的行为顺利,并且感觉不同,在使用这两个控件的应用程序中都可以识别 我尝试在中查找负责ListBox触摸行为的代码,但ListBox类甚至不包含单词“touch” 是否有办法在ItemsControl上启用触摸滚动,或者,如果没有,负责列表框的魔法代码隐藏在哪里,以便我可以移植它?将项控件放入滚动查看

WPF列表框内置了一些非常好的触摸滚动功能,我想在一个简单的ItemsControl上使用这些功能

我强烈希望使用现有的功能来实现这一点,因为我以前的工作(使用触地/移动/向上事件)没有ListBox的行为顺利,并且感觉不同,在使用这两个控件的应用程序中都可以识别

我尝试在中查找负责ListBox触摸行为的代码,但ListBox类甚至不包含单词“touch”


是否有办法在ItemsControl上启用触摸滚动,或者,如果没有,负责列表框的魔法代码隐藏在哪里,以便我可以移植它?

项控件
放入
滚动查看器
中,并确保触摸事件从
项控件
中的任何控件冒泡到
滚动查看器

<ScrollViewer>
    <ItemsControl>
    </ItemsControl>
</ScrollViewer>

所使用的ScrollViewer属性(在ControlTemplate内部或ItemsControl外部)需要设置为“无”以外的其他属性


负责触摸滚动的代码可以在类中找到。

正如他们所说,您需要将ItemsControl放入ScrollViewer中,但是如果您想这样做,您必须设置ItemsControl的高度。
请看这篇文章:

我在ItemsControl的模板中添加了一个ScrollViewer。但是没有运气。我将使用Snoop检查触摸事件的进展情况……Snoop告诉我,视觉树中没有任何内容处理这些触摸事件。当我把ScrollViewer放在外面时,除了虚拟化不再工作外,没有任何变化。感谢您的输入,但我的问题是“触摸滚动”中的“触摸”部分。“滚动”部分工作正常。=)我认为这是WPF的问题,不是WP8?