WPF中在ScrollViewer控件内部的Slider控件无法触摸滑动,是由于ScrollViewer控件默认设置了IsManipulationEnabled为True。
<ScrollViewer x:Name="ScrollViewer1">
<Slider></Slider>
</ScrollViewer>
WPF ScrollViewer的IsManipulationEnabled属性是用来控制触摸手势操作的开关。当这个属性设置为true时,用户可以使用触摸手势(如滑动、缩放)来操作控件,而当设置为false时,控件将不会响应这些手势操作。
在使用触摸屏幕的设备上,IsManipulationEnabled属性可以让用户更方便地使用ScrollViewer控件,这可以提高用户体验。默认情况下,这个属性的值是true。文章来源:https://www.toymoban.com/news/detail-616856.html
所以在Slider控件,或者Slider的父控件将ScrollViewer控件IsManipulationEnabled设为False即可。文章来源地址https://www.toymoban.com/news/detail-616856.html
<ScrollViewer x:Name="ScrollViewer1">
<Slider MouseEnter="SelectedCanvas_OnMouseEnter" MouseUp="SelectedCanvas_OnMouseUp"></Slider>
</ScrollViewer>
private void SelectedCanvas_OnMouseEnter(object sender, MouseEventArgs e)
{
ScrollViewer1.IsManipulationEnabled = false;
}
private void SelectedCanvas_OnMouseUp(object sender, MouseEventArgs e)
{
ScrollViewer1.IsManipulationEnabled = true;
}
到了这里,关于WPF 在ScrollViewer控件内部的Slider控件无法触摸滑动的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!