【问题标题】:Is there a freely available "Spinning Wheel"-like control anywhere for Windows Forms?Windows 窗体的任何地方是否有免费提供的类似“纺车”的控件?
【发布时间】:2011-03-10 18:41:13
【问题描述】:

我们都使用过ProgressBar 控件,它很棒。

不过,有时您想向用户表明工作正在完成,即使您无法确定工作完成的百分比或完成所需的时间。

一些操作系统上,您可以设置Style = ProgressBarStyle.Marquee;,但不支持此设置,例如 Windows Server 2008。

是否有任何类型的“纺车”控件(如 this)可以免费获得(可能在 CodeProjectCodePlexSourceForge 或其他地方)并满足这一需求?

它不一定是轮子,真的 - 任何适当的控件都可以传达“工作正在完成 - 不用担心”的信息。

【问题讨论】:

  • 不太确定在服务器上刻录周期以保持 UI 小工具更新是否有意义。老式的沙漏光标可以廉价地完成工作。
  • @Hans:我正在开发一个 Windows 窗体应用程序。我不认为这真的会使您的观点无效,但我确实认为,对于 Windows 窗体应用程序,期望是,只要正在完成一些工作,用户就应该意识到并确保正在取得进展(而不是刚刚冻结的应用程序)。
  • Hmya,这只是一种错觉,不是吗?要保持选取框继续运行,您必须在线程上完成工作。线程可能会被冻结,选框会一直持续下去。
  • @Hans 有很多情况,例如一个是 Windows 2008 服务器可能是用户远程登录以运行您的应用程序的终端服务器,因此它可能非常有意义。

标签: .net winforms progress-bar


【解决方案1】:

如果您只能显示 GIF 或动画图像:

http://www.ajaxload.info/

这可以在用户控件中完成,方法是使用Image 类提取 GIF 的帧并根据需要进行绘制。

【讨论】:

  • 我使用您建议的站点制作了图像,并使用 WpfAnimatedGif NuGet 包 (wpfanimatedgif.codeplex.com) 在我的代码中实现了它。这一切都花了不到5分钟的时间! :D
【解决方案2】:

我使用了来自 Code Project 的 Progress Indicator。不像其他一些那样花哨,但它可以完成工作。

【讨论】:

  • 我不喜欢花哨的控件 ;)
【解决方案3】:

【讨论】:

【解决方案4】:

There's some more here -- 遮住眼睛,一页一页很激动。

【讨论】:

    【解决方案5】:

    我对这个控件很满意(来自 CodeProject):

    How to write a loading circle animation in .NET?

    【讨论】:

      【解决方案6】:

      您应该能够在 WinForms 窗口上使用 WPF 中的进度条。而且那个确实支持 Server 2008 R2 上的 Marquee。

      【讨论】:

        猜你喜欢
        • 2010-12-07
        • 1970-01-01
        • 1970-01-01
        • 2010-10-19
        • 1970-01-01
        • 2014-03-26
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多