我提到WPF中没有标准的忙控制。那么,在加载页面时,显示动画忙圈(不是进度条)的最简单方法是什么,例如浏览器显示?
如果您建议从互联网上下载控件,请确保此控件是免费的,没有许可限制(例如,如果我使用它,我将被迫使用GPL我的应用程序。)
提前谢谢
答案 0 :(得分:18)
还有Sacha Barber的Circular Progress Bar。它是根据Code Project Open License获得许可的。
答案 1 :(得分:12)
答案 2 :(得分:8)
你也可以使用动画GIF,例如比较这个网站:http://www.loadinfo.net/。为您生成不同的颜色,表格,每秒帧数,透明背景。
然后添加WPF Animated GIF作为项目的参考。
创建一个以<Image gif:ImageBehavior.AnimatedSource="Images/animated.gif" />
为内容的usercontrol,并为usercontrol一个依赖属性(DP)IsBusy
,并对usercontrol中的方法进行回调:
`public static readonly DependencyProperty IsBusyProperty = DependencyProperty.Register("IsBusy", typeof(bool), typeof(SpinProgress), new FrameworkPropertyMetadata(new PropertyChangedCallback(OnIsBusyChangedCallBack)));`
在这种方法中,可以执行动画gif的Play()
和'Pause()'方法。
将usercontrol的IsBusy
属性绑定到视图模型。
或 - 适当时 - 忽略DP以及Play()
和Pause()
方法,并将Visibility
属性绑定到视图模型。
答案 3 :(得分:4)
您可以在应用程序繁忙时实施处理轮。虽然WPF不支持任何GIF图像,但您必须使用动画。下面是FrameAnimation旋转轮的一个很好的链接。
http://www.codeproject.com/Articles/29545/FrameBasedAnimation-Animating-multiple-properties
答案 4 :(得分:3)
我最近上传了一个到codeplex。它允许您自定义它(即使在运行时)。您可以从here下载。示例演示也已上传。
答案 5 :(得分:0)
我最近实施了一个看起来像iPhone忙碌指示器,here解释。