本文记录在 Popup 失焦后导致 ListBox 无法用 MouseWheel 滚动问题

原因:

Popup虽然是个完整独立的窗体,但它的激活要靠它的“父窗口”间接来激活,这里之所以说是“父窗口”,是因为它本身并没有真正的“父窗口”,它只是从“父窗口”里产生的一个游离的“子窗口”,也就是说它没记住它的“父亲”,但是它的“父亲”倒是记住它了,在“父亲”被激活的时候,“父亲”会去主动激活它这个不肖的“儿子”。

所以问题解决就从激活“父窗口”开始,在Popup窗体的PreviewMouseDown事件处理函数中,直接激活“父窗口”就可以了。写成伪代码如下:

        popup.PreviewMouseDown += DialogPopup_PreviewMouseDown;

        private void DialogPopup_PreviewMouseDown(object sender, System.Windows.Input.MouseButtonEventArgs e)
{ this.Activate();//this为其理论上的父窗口,还请替换为你的实际代码。另外,根据代码规范,不要写 this. 哦 this.Focus();
}

WPF 已知问题 Popup 失焦后导致 ListBox 无法用 MouseWheel 滚动问题和解决方法的更多相关文章

  1. 客户端ajax请求为实现Token验证添加headers后导致正常请求变为options跨域请求解决方法

    客户端为了实现token认证,通过Jquery的ajaxSetup方法全局配置headers: 全局配置headers后会导致部分不需要token认证的请求变为options请求,导致跨域访问.报错信 ...

  2. 由于jsp include 很多文件后导致java类大小超过65535 bytes 的解决方法(转载)

    昨天,我遇到了一個讓我很頭疼的問題. 我做了一個共通的jsp,單只測它是ok的,可是,放在別的jsp中include它,就會報錯如標題所示:The code of method _jspService ...

  3. WPF:验证登录后关闭登录窗口,显示主窗口的解决方法

    http://www.27ba.com/post/145.html WPF:验证登录后关闭登录窗口,显示主窗口的解决方法 最近想做一个基于Socket的通讯工具,想模仿QQ那样,需要先登录,登录成功后 ...

  4. 改进动态设置query cache导致额外锁开销的问题分析及解决方法-mysql 5.5 以上版本

    改进动态设置query cache导致额外锁开销的问题分析及解决方法 关键字:dynamic switch for query cache,  lock overhead for query cach ...

  5. ECSHOP后台登陆后一段时间不操作就超时的解决方法

    ECSHOP后台登陆后一段时间不操作就超时的解决方法 ECSHOP教程/ ecshop教程网(www.ecshop119.com) 2012-05-27   客户生意比较好,因此比较忙,常常不在电脑前 ...

  6. PAT1020 (已知中序,后序遍历转前序遍历)

    已知后序与中序输出前序(先序):后序:3, 4, 2, 6, 5, 1(左右根)中序:3, 2, 4, 1, 6, 5(左根右) 已知一棵二叉树,输出前,中,后时我们采用递归的方式.同样也应该利用递归 ...

  7. Vue devtool插件安装后无法使用,提示“vue.js not detected”的解决方法

    vue devtool下载 极简插件  github vue devtool安装 点击谷歌浏览器箭头所指图标-更多工具-扩展程序   ①:直接将后缀为crx的安装包拖进下图区域即可自动安装     ② ...

  8. macOS 10.15 Catalina xxx.app已损坏,无法打开,你应该将它移到废纸篓解决方法

    原文连接:https://www.macwk.com/article/mac-catalina-1015-file-damage 更新macOS 10.15 Catalina后,很多在10.14上可以 ...

  9. 数据库安装后无法访问且mysql重启报错的解决方法

    数据库安装后无法访问,mysql重启报错: 或报错:MySQL is running but PID file could not be found 解决方法: 第一种方法:看磁盘是否已满:df –h ...

  10. 远程分支删除后,git branch -a还能看到的解决方法

    详情https://www.cnblogs.com/wangiqngpei557/p/6058115.html 大家在删除远程分支后 git branch -a 还是可以看到已删除的远程分支,时间一长 ...

随机推荐

  1. Avalonia 11.1.0-beta1 发布

    11.1.0-beta1 Avalonia 是 dotnet 的跨平台 UI 框架,提供灵活的样式系统,支持 Windows.macOS.Linux.iOS.Android 和 WebAssembly ...

  2. 可变形卷积系列(二) MSRA提出升级版DCNv2,变形能力更强 | CVPR 2019

    论文提出DCNv2,不仅对DCNv1的结构进行了改进,还使用了有效的蒸馏学习策略,使得性能有很大的提升,各个方面都值得借鉴   来源:晓飞的算法工程笔记 公众号 论文: Deformable Conv ...

  3. IDEA怎么添加类注释和方法注释模板

    IDEA设置自动生成模板类和方法注释 一.模板类注释 在右侧粘贴如下代码: /** *@BelongsProject: ${PROJECT_NAME} *@BelongsPackage: ${PACK ...

  4. Java实现动态数组【数据结构与算法】

    1.数组 类型固定.长度固定 连续的内存空间 顺序存储.随机读取 查询快.新增删除慢.最好初始化的时候就指定数组大小.这样就可以避免一定的数组扩容出现的内存消耗. import java.util.A ...

  5. yml和properties打印SQL日志信息

    1.配置文件里面配置 第一种是properties类型如下 logging.level.com.datayes.mdi.dao.rdb.mommp.**=debug其中 com.datayes.mdi ...

  6. #排列组合#C 模拟比赛

    分析 由于每个选手的得分独立,考虑按照选手的最高得分降序排序 如果当前枚举到选手\(i\),首先记录\(o_i\)表示在选手\(i\)之前最小得分不低于选手\(i\)的最高得分 (必选,等于必选当且仅 ...

  7. #floyd,斜率#洛谷 1354 房间最短路问题

    题目 在一个长宽均为10,入口出口分别为(0,5),(10,5)的房间里有几堵墙, 每堵墙上有两个缺口,求入口到出口的最短路径. 分析 暴力建图,判断两个点是否有墙堵住, 可以求斜率然后判断所交点不能 ...

  8. OpenHarmony有氧拳击之设备端开发

    一.简介 在一个风和日丽,阳光明媚的下午,码农们都像往常一样正在专注地码代码.突然前面的小哥哥站起来,手握开发板,来回出拳.这是怎么回事? 原来这是一款拳击互动游戏,本文将带你一同解开其中的奥秘.开发 ...

  9. k8s之存储卷local PV

    一.简介 local能够作为PV使用的本地存储卷. local卷插件用于将本地存储设备(如磁盘.分区或目录) 配置为卷. hostPath卷在Pod被重建后可能被调试至其它节点而无法再次使用此前的数据 ...

  10. 【Python3.10.4】Centos7 ,centos8,centos9源码安装 python3.10.4 解释器

    1.检查是否安装wget如果没有安装则: 终端执行: yum -y install wget 2.下载python3源码包 终端执行: wget https://www.python.org/ftp/ ...