Domanda

Sto utilizzando il controllo ProgressBar in un'applicazione WPF e sto ottenendo questo vecchio Windows 3.1 ProgressoBlocchi cosa.In VB6, c'era una proprietà per mostrare un liscia ProgressBar.C'è una cosa per WPF?

È stato utile?

Soluzione

Questo Articolo sembra spiegare quello che stai cercando...c'è un link a una versione di visual basic dell'articolo.

Altri suggerimenti

Non ero in grado di trovare una soluzione diretta per questo.Ma ho trovato qualcosa di ancora migliore.In WPF, è possibile utilizzare i Temi di Windows.Sto usando Windows XP, e avendo Vista-Aero Tema sulla mia Applicazione WPF, facendo tutti i controlli assomigliare a Vista-Aero.

Ecco il codice...

Vai all'Applicazione.xaml.vb e scrivere...

  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

(Spero che è possibile convertirlo in C#)

Io non sono sicuro di quello che vuoi fare.Se si desidera semplicemente una barra di avanzamento che "spazza" da un lato all'altro come in avvio di Vista è possibile utilizzare:IsIndetermined = true.

Se si vuole realmente andare dallo 0% al 100%, si dovrà animare il valore, come mostrato in questo esempio su msdn: http://msdn.microsoft.com/en-us/library/system.windows.controls.progressbar.aspx o impostare il valore in modo esplicito nel codice-dietro (molto probabilmente da un operaio di sfondo) o per il tramite di un'associazione a una variazione del valore.

Tuttavia WPF ProgressBar deve sempre essere "liscia", c'è la possibilità che l'interfaccia utente di default per una più semplice versione attraverso un RemoteDesktop connessione.

Recentemente sono stato infastidito da l'aspetto del mio barre di avanzamento di XP dopo aver sviluppato su Vista.Non ho voglia di provare i suggerimenti che avevo visto per il carico in Vista stili di dll, ma questo articolo mi ha dato proprio quello che stavo cercando.vista l'aspetto - non ci sono nuove classi.In più ha il vitreo evidenziare su un timer.Nessuna foto su questo articolo, ma sembra proprio come Vista ProgressBar.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top