我在WPF應用程序中使用ProgressBar控件,並且我得到這個舊的Windows 3.1 Progress Blocks的東西。在VB6中,有一個屬性顯示平滑的 ProgressBar。 WPF有這樣的事嗎?WPF中的平滑ProgressBar
回答
This知識庫文章似乎解釋了你在找什麼...還有一個VB版本的文章的鏈接。
哦。至少是說:「你不能那樣做了!」。可悲的是,解決方案本身有點簡約 - 我認真地懷疑它會與動畫一起工作。不過謝謝你。 – 2008-09-17 12:13:03
這是一個WinForms解決方案。在WPF中,您應該爲ProgressBar創建一個新的ControlTemplate。 – 2008-09-17 18:34:05
我不確定你想要做什麼。 如果你只是想要一個像掃描Vista一樣「掃掠」的進度條,你可以使用:IsIndetermined = true。
如果你真的想從0%到去你必須要麼動畫在值顯示在MSDN上的這個例子中100%:http://msdn.microsoft.com/en-us/library/system.windows.controls.progressbar.aspx 或設定值明確無論是在代碼隱藏(最有可能從後臺工人)或通過綁定到一個不斷變化的值。
儘管如此,WPF ProgressBar應該始終是「平滑」的,但是有可能通過RemoteDesktop連接將UI默認爲更簡單的版本。
在Vista上開發後,最近我在XP上進度條的出現讓我很惱火。我不想嘗試我看到的用於加載Vista的風格的建議,但this article給了我我正在尋找的東西。遠景 - 沒有新課程。另外它還有定時器上的玻璃亮點。文章中沒有圖片,但它看起來就像Vista的ProgressBar。
我無法爲此找到直接解決方案。但我發現更好的東西。在WPF中,您可以使用Windows主題。我使用的是Windows XP,並在我的WPF應用程序上安裝了Vista-Aero主題,使所有控件看起來像Vista-Aero。
下面的代碼...
轉到Application.xaml.vb和寫...
Enum appThemes
Aero
Luna
LunaMettalic
LunaHomestead
Royale
End Enum
Private Sub Application_Startup(ByVal sender As Object, ByVal e As System.Windows.StartupEventArgs) Handles Me.Startup
setTheme(appThemes.Aero)
End Sub
''' <summary>
''' Function to set the default theme of this application
''' </summary>
''' <param name="Theme">
''' Theme of type appThemes
''' </param>
''' <remarks></remarks>
Public Sub setTheme(ByVal Theme As appThemes)
Dim uri As Uri
Select Case Theme
Case appThemes.Aero
' Vista Aero Theme
uri = New Uri("PresentationFramework.Aero;V3.0.0.0;31bf3856ad364e35;component\\themes/Aero.NormalColor.xaml", UriKind.Relative)
Case appThemes.Luna
' Luna Theme
uri = New Uri("PresentationFramework.Luna;V3.0.0.0;31bf3856ad364e35;component\\themes/Luna.NormalColor.xaml", UriKind.Relative)
Case appThemes.LunaHomestead
' Luna Mettalic
uri = New Uri("PresentationFramework.Luna;V3.0.0.0;31bf3856ad364e35;component\\themes/Luna.Metallic.xaml", UriKind.Relative)
Case appThemes.LunaMettalic
' Luna Homestead
uri = New Uri("PresentationFramework.Luna;V3.0.0.0;31bf3856ad364e35;component\\themes/Luna.Homestead.xaml", UriKind.Relative)
Case appThemes.Royale
' Royale Theme
uri = New Uri("PresentationFramework.Royale;V3.0.0.0;31bf3856ad364e35;component\\themes/Royale.NormalColor.xaml", UriKind.Relative)
End Select
' Set the Theme
Resources.MergedDictionaries.Add(Application.LoadComponent(uri))
End Sub
(我希望你可以把它轉換成C#)
- 1. WPF平滑動畫
- 2. wpf中的stackpanel內的平滑滾動
- 3. MeshGeometry3D中的頂點平滑(WPF)
- 4. WPF progressbar style
- 5. WPF ProgressBar不更新?
- 6. WPF的平滑視頻轉換
- 7. 在WPF中的TabItem頭中嵌入ProgressBar
- 8. WPF中的ProgressBar上的文本
- 9. 如何更改WPF中ProgressBar的前景?
- 10. 如何使用WPF中的progressBar
- 11. WPF鼠標平滑運動問題
- 12. WPF ProgressBar顯示問題
- 13. WPF忽略ProgressBar樣式
- 14. WPF中重度UI控件的平滑調整行爲
- 15. 的水平滑
- 16. webview中的平滑水平滾動
- 17. WPF中的滑塊「動畫」?
- 18. WPF中的圓形滑塊
- 19. 用於Webservice調用的WPF ProgressBar
- 20. MATLAB中的高斯平滑
- 21. geom_line中的平滑顏色
- 22. Python中的3RSSH平滑
- 23. Java中的平滑移動
- 24. Tableau中的線條平滑
- 25. GLSL中的平滑過渡
- 26. GLUT中的平滑運動
- 27. jQuery中的平滑切換
- 28. IIS在WPF應用程序中平滑流式傳輸
- 29. 如何在WPF中伸展位圖而不平滑像素
- 30. 如何在C#中使用WPF快速平滑動畫
不是一個答案,但關於進度條和流暢操作的話題,這裏是關於不同功能的很好的論文:http://www.chrisharrison.net/projects/progressbars/ProgBarHarrison.pdf – 2008-09-17 12:11:10