c# - 在Windows窗体中,当用户单击滚动条时如何阻止UI线程阻塞?

标签 c# .net windows winforms

除了面板的滚动条等之外,没有其他控件可以实现此效果。单击并按住按钮、标签、链接、选项卡以及任何其他控件都不会产生此效果。但是,一旦用户单击滚动条,或者单击并拖动滚动条,UI 线程上的所有其他处理都会停止。这对我的应用程序来说是一个大问题(游戏,需要在这种情况下继续运行),但我无法找到通过重载、添加 Application.DoEvents 调用或任何其他方式来处理此问题的方法像那样。有什么想法吗?

最佳答案

在我看来,您应该尝试将游戏逻辑移动到不同的线程中(而不是让游戏逻辑在主 UI 线程内运行)。

我认为没有任何方法可以禁用滚动条的行为。除非您创建自己的控件并为需要它的容器提供自己的滚动功能。

关于c# - 在Windows窗体中,当用户单击滚动条时如何阻止UI线程阻塞?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1324920/

相关文章:

windows - 批处理 : delete line feed from end of text file using filepaths

windows - 如何在缺少用户权限的情况下获取正在运行的进程的路径

c# - 创建 IEnumerable<T>.Find()

android - 在 Windows 上并行用于多个 Android 设备的 ADB

c# - 动态更新事件

c# - 打开/关闭应用程序的功能

c# - ASP.Net 页面可以在不使用代码隐藏页面的情况下实现接口(interface)吗?

c# - 处理多个表单之间的数据

c# - 打开 XML 创建多个工作表

c# - Showing MDI Child - 一个只在屏幕上出现一毫秒可见的随机形式