WPF中在ScrollViewer控件內(nèi)部的Slider控件無法觸摸滑動(dòng),是由于ScrollViewer控件默認(rèn)設(shè)置了IsManipulationEnabled為True。
<ScrollViewer x:Name="ScrollViewer1">
<Slider></Slider>
</ScrollViewer>
WPF ScrollViewer的IsManipulationEnabled屬性是用來控制觸摸手勢(shì)操作的開關(guān)。當(dāng)這個(gè)屬性設(shè)置為true時(shí),用戶可以使用觸摸手勢(shì)(如滑動(dòng)、縮放)來操作控件,而當(dāng)設(shè)置為false時(shí),控件將不會(huì)響應(yīng)這些手勢(shì)操作。
在使用觸摸屏幕的設(shè)備上,IsManipulationEnabled屬性可以讓用戶更方便地使用ScrollViewer控件,這可以提高用戶體驗(yàn)。默認(rèn)情況下,這個(gè)屬性的值是true。文章來源:http://www.zghlxwxcb.cn/news/detail-616856.html
所以在Slider控件,或者Slider的父控件將ScrollViewer控件IsManipulationEnabled設(shè)為False即可。文章來源地址http://www.zghlxwxcb.cn/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;
}
到了這里,關(guān)于WPF 在ScrollViewer控件內(nèi)部的Slider控件無法觸摸滑動(dòng)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!