首页 > 其他分享 >WPF解决当ScrollViewer中嵌套ItemsControl时,不能使用鼠标来滚动翻页

WPF解决当ScrollViewer中嵌套ItemsControl时,不能使用鼠标来滚动翻页

时间:2024-03-27 21:23:02浏览次数:30  
标签:sender 滚动 scrollViewer 翻页 ItemsControl ScrollViewer PreviewMouseWheel Handled

1.在DataGrid中添加PreviewMouseWheel事件,并将事件的Handled属性设置为false,以便将滚动事件传递给ScrollViewer。示例代码如下:

<DataGrid PreviewMouseWheel="DataGrid_PreviewMouseWheel">
    <!-- DataGrid的其他设置 -->
</DataGrid>
private void DataGrid_PreviewMouseWheel(object sender, MouseWheelEventArgs e)
{
    e.Handled = false;
}

2.在ScrollViewer中添加PreviewMouseWheel事件,并使用ScrollViewer.ScrollToVerticalOffset方法手动滚动。示例代码如下:

<ScrollViewer PreviewMouseWheel="ScrollViewer_PreviewMouseWheel">
    <DataGrid>
        <!-- DataGrid的其他设置 -->
    </DataGrid>
</ScrollViewer>
private void ScrollViewer_PreviewMouseWheel(object sender, MouseWheelEventArgs e)
{
    e.Handled = true;
    var scrollViewer = (ScrollViewer)sender;
    scrollViewer.ScrollToVerticalOffset(scrollViewer.VerticalOffset - e.Delta);
}

 

标签:sender,滚动,scrollViewer,翻页,ItemsControl,ScrollViewer,PreviewMouseWheel,Handled
From: https://www.cnblogs.com/RX-ccA/p/18100265

相关文章

  • uni-app 滑动翻页
    <template><viewclass="contain-box"><u-navbar:title="title":is-back="true"back-icon-color="#fff":background="background":border-bottom="false&......
  • ItemsControl 控件
    一、ItemsControl简介   ItemsControl是用来表示一些条目集合的控件,它的成员是一些其它控件的集合。   其继承关系如下:   在这里插入图片描述   其常用的派生控件为:ListBox、ListView、ComboBox,为ItemsControl的具体实现。   ItemsControl的成员条目可以为......
  • ItemsControl和ListView、ListBox的区别
    1、ItemsControl用来显示一个数据项的集合,它的底层是一个列表,它可以非常灵活的展示布局和数据以下是例子<ItemsControlItemsSource="{BindingStudent}"><ItemsControl.ItemTemplate><DataTemplate> <TextBlockText="{BindingId}"/> <Tex......
  • 关于小说阅读前端翻页插件推荐turn.js
    http://www.turnjs.com......
  • python 翻页功能
    python翻页功能在django框架下使用fromdjango.core.paginatorimportPaginator#数据集合data=[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21]per_datas=5#每页显示的数量#创建Paginator对象paginator=Paginator(data,per_datas)#获取......
  • WPF自定义控件之ItemsControl鱼眼效果
    原理先获取鼠标在控件中的坐标,在获取其每一项相对于ItemsControl的坐标,然后计算每一项离当前鼠标的距离,在根据这个距离,对其每一项进行适当的缩放实现创建一个类,命名为FishEyeItemsControl publicclassFishEyeItemsControl:ItemsControl 添加应用鱼眼效果方法(控制其控件......
  • echarts饼图实现图例翻页
    实现步骤:1、echarts安装npminstallecharts2、页面引入import*asechartsfrom'echarts'3、容器<divref="talentDemandChart"style="width:350px;height:250px;text-align:center;position:absolute;left:10px;top:70px;"></div......
  • 基于element-ui开发组件自行制作的翻页小组件
    表格展示区<el-table:data="dis"style="width:100%;height:525px;"></el-table>翻页区<to-page:value="{page:tableData.length,current_page:current_page}"@......
  • ssh连接linux清屏(不是翻页的伪清屏)
    clear的问题clear命令可以实现清屏,但是用ssh连接Linux服务器时使用这个命令有个致命的缺点:只是将屏幕向下翻一页,之前的内容仍然可以通过向上翻页(转动鼠标滚轮)看到。解决方案方法一无意间的测试发现,连续使用两次clear可以真正清屏。因此可以写个文件clsvicls在文件中写:#!......
  • python爬虫怎么翻页 ?
    首先,你需要安装相关的库。在你的命令行窗口中,输入以下命令来安装所需的库:pipinstallrequestsbeautifulsoup4然后,你可以使用以下代码来爬取网页内容并翻页:packagemainimport("fmt""net/http""io/ioutil""encoding/gob""log")funcmain(){......