Frage

Diese Frage ist ziemlich DevExpress spezifisch.

Ich verwende eine NavBar Steuerung mit dem Standard "SkinExplorerBarView" in einer WinForms-Anwendung, und möchte das Erscheinungsbild eines ausgewählten Navigationslink ändern .

änderte ich die Hintergrundfarbe der Kontrolle „ItemPressed“ und „ItemActive“ Erscheinungen, sowie jedes der einzelnen Artikel „gedrückt“ Aussehen, aber keine von ihnen hatten die keine Auswirkungen auf, wie die Verbindungen aussehen, wenn ich auf sie klicken, .

Ich habe auch versucht, die Kontrolle der LookAndFeel.UseDefaultLookAndFeel Eigenschaft auf False zu setzen, aber das hat nicht geholfen weder.

Wie Rusty vorgeschlagen habe ich dann versucht, das CustomDrawLink Ereignis zu implementieren, noch ohne Erfolg. (Witziger, nachdem er einen Link ausgewählt haben, ist es nicht der Staat hat „Selected“, sondern „Gedrückt“ statt, so habe ich das):

private void nbcNavigation_CustomDrawLink(object sender, 
    DevExpress.XtraNavBar.ViewInfo.CustomDrawNavBarElementEventArgs e)
{
    if (e.ObjectInfo.State == DevExpress.Utils.Drawing.ObjectState.Pressed)
    {
        e.Appearance.BackColor = Color.FromArgb(192, 192, 255);
    }
}

Ich fand Beispiel auf CustomDrawLink verwenden, aber das macht die ganze Zeichnung von Hand, die viel Schmerz und viel des Guten ist. Ich möchte die DevExpress „Motor“ den Link zu ziehen, nur durch einen weiteren Backcolor verwendet wird.

War es hilfreich?

Lösung

Die NavBar ist ein echten Schmerzen zu gestalten ... vor allem, weil es ist so konzipiert, ein gemeinsames Auftreten für alle Navigationselemente (Art Polizei, nicht meine Idee) zu geben. Sie sollen eine der Skinstile auswählen, die am besten mit Ihrem Gui funktioniert (immer die Haut / LookAndFeel System wissen, ist die Zeit wert).

Dann nutzen Sie die CustomDrawXXX Ereignisse der NavBar Kontrolle für jede kundenspezifische Bedürfnisse Malerei:)

Sie können auch die DevX Haut Designer verwenden und eine Haut nur für die NavBar erstellen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top