解决ScrollViewer滚动问题的办法

 C# 中,两个ScrollViewer嵌套在一起或者ScrollViewer里面嵌套一个ListBox、Listview(控件本身有scrollviewer)的时候,我们本想要的效果是鼠标滚动整个ScrollViewer的内容,但你会发现实际结果和你想像的不一样,内部有scrollviewer的内容不会随鼠标的滚动而滚动,怎么办呢?
解决办法如下:
先截取外面的ScrollViewer的滚动事件,然后再重新让外面的ScrollViewer触发滚动事件就可以了
假设有2个控件,一个是Listbox(内部名字是listbox),一个是ScrollViewer(外部),Listbox在ScrollViewer内部的,并且ListBox的scroll滚动功能都禁用为Disabled,只启用外部ScrollViewer的滚动功能,这时添加如下代码,则能使ListBox中的内容随ScrollViewer的鼠标滚动而滚动

listbox.PreviewMouseWheel+=(sender,e)
{
var eventArg = new MouseWheelEventArgs(e.MouseDevice,e.TimeDevice,e.Delta);
eventArg.RoutedEvent = UIElement.MouseWheelEvent;
eventArg.Source = sender;
this.listbox.RaiseEvent(eventArg);
};

时间: 2024-08-30 06:06:29

解决ScrollViewer滚动问题的办法的相关文章

彻底解决mysql中文乱码的办法

MySQL会出现中文乱码的原因不外乎下列几点: 1.server本身设定问题,例如还停留在latin1 2.table的语系设定问题(包含character与collation) 3.客户端程式(例如php)的连线语系设定问题 强烈建议使用utf8!!!! utf8可以兼容世界上所有字符!!!! Linux下Mysql插入中文显示乱码解决方案 mysql -uroot -p 回车输入密码 进入mysql查看状态如下: mysql不能插入中文 默认的是客户端和服务器都用了latin1,所以会乱码.

解决java.util.ConcurrentModificationException错误办法

这个异常一般在我们遍历删除集合元素时出现.写了下面这个代码来展示这个异常. [java] import java.util.ArrayList; import java.util.List; public class ExeptionTest { public static void main(String[] args) { List list = new ArrayList(); list.add("a"); list.add("b"); list.add(&q

解决git pull时冲突办法

多人共同开发项目,可能会遇到git pull时有冲突,此时可以通过以下办法来解决: git stash git pull git stash pop git stash 暂存本地修改 git pull 从远程版本库拉取新的修改 git stash pop 将暂存起来的修改合并到本地工作库,如果有冲突会有相应的提示,解决冲突并提交即可

[Windows Phone] 另类方法解决ScrollViewer设置透明度后文字模糊问题

最近在开发一些Windows Phone 7的应用,遇到了一些问题,比较奇怪的当属昨天遇到的了. 当我在ScrollViewer中放入一个TextBlock控件绑定文字,并设置ScrollViewer的透明度为非1.0(我设置0.7,比较好看),这时如果TextBlock中文字超出ScrollViewer的高度,也就是说可以上下滑动来看到更多文字,就会出现文字模糊的情况发生,如下图: 请教了多位朋友都说这可能是个Bug,于是Google了很久也没能找到解决方法,于是灵机一动用来一个另类的方法来解

教你解决ADSL变慢的办法

  解决方法是: 1.让一块网卡只运行PPPOE协议来连接ADSL,提供上网的外部连接,另一块网卡运行局域网的其他协议,从而各尽其职提高性能,这样客户端上网速度就会改善. 2.ADSL设备散热不良. ADSL设备工作时发热量比较大,平时要注意散热,许多用户把ADSL设备和路由器.集线器等放在一个机柜里,各种设备工作时一块散热,对ADSL的正常工作有影响.如刚上网时正常,5分钟左右,网速下降,下载速率与窄带56kMODEM一样,这时用手摸设备很烫,换一个ADSL设备,速度就上来了.所以,微机.AD

google chrome浏览器下解决12px字号限制的办法

使用Webkit的私有属性 -webkit-text-size-adjust 来解决chrome下12px字号限制的问题:  代码如下 复制代码 .xxx {-webkit-text-size-adjust:none;font-size:*px; } 哈哈,只要一句代码就可以搞定了,有需要的参考一下.

python解决GPS打卡问题解决办法

目前很多所谓的互联网公司都要搞GPS定位考勤打卡,目前所在的客户单位也要求所有厂家人员进行GPS软件打卡.除了公司的指纹打卡外,还要再打客户的卡.既然是地理定位,在android平台下之前测试过通过使用Fake GPS软件 ,开启开发者模式,允许模拟地理位置是可以实现地点任意的.不过目前用的iphone手机,又不想越狱掉,就想通过抓包,利用python向服务器定点发送伪造包的方式解决.原理和之前写的手机APP自动签到-python实现一样. 这个不同与这之前写的是,这里使用的是POST方法,相对

解决WindowsUpdate 80072ee2问题的办法

解决方法 这种程序一般来说就是防火墙.杀软.综合安全软件.Web加速器.代理服务器等.所以当你遇到类似问题时,可以尝试关闭这些软件和相关服务,然后再次打开更新程序和商店,可能就会恢复正常. 另外,你也可以把下列地址添加到防火墙和安全软件的"信任"或"允许"列表("白名单"或"例外")中,或者允许Windows Update服务通过端口80和端口443连接到Internet(适用于Windows更新): • http://*.u

IOS中解决Keyboard遮盖输入的办法

一般来说,键盘遮挡主要有这么几种情况,一个是遮住UITextView,还有就是遮住UITextField,一 般来说,比较推荐在UIScrollView或者UITableView里加入textfield的控件.但是有时也许难免. 在UITextView中 这个在苹果官方文档中的项目中给出了做法,首先是注册观察者监听 UIKeyboardWillShow和WillHide事件 - (void)viewWillAppear:(BOOL)animated { [super viewWillAppear