該控件繼承 Control 基類開發的。該動畫利用定時器完成。
這個加載等待功能目前只是做成控件的形式,要做成蒙版彈層,是一個很復雜的問題,這涉及到顏色透明疊加的問題。我也反編譯 Devexpress 第三方控件庫看了下SplashScreenManager 類彈層功能,他們是利用新彈出窗體來實現的,但他們也做得不怎么完善。DotNetBar 控件庫好像也沒有這種功能。
Active 屬性設置波浪動畫是否啟動。在vs的窗體設計器是看不到效果的,因為重寫了 DesignMode 取消了他的默認行為,只有在實際程序運行中才會有效果。
通過 ProgressType 屬性可以設置加載不同風格形狀。
重寫的方法如下
新增的類如下
新增屬性如下
源碼下載:加載等待控件.zip