Question

cette question est assez DevExpress spécifique.

J'utilise un contrôle NavBar avec la norme « SkinExplorerBarView » dans une application WinForms, et voudrais changer l'apparence d'un lien de navigation sélectionné .

J'ai changé la couleur de fond de « ItemPressed » et les apparences « ItemActive » du contrôle, ainsi que chaque de seul article apparence « Enfoncé », mais aucun d'entre eux avaient l'un quelconque effet sur la façon dont les liens ressemblent quand je cliquez sur les .

J'ai essayé aussi de définir la propriété LookAndFeel.UseDefaultLookAndFeel du contrôle sur False, mais cela n'a pas aidé non plus.

Comme proposé par Rusty, je puis essayé de mettre en œuvre l'événement CustomDrawLink, toujours sans succès. (Funnily, après avoir sélectionné un lien, il n'a pas l'état « sélectionné » mais « Enfoncé » à la place, donc je que):

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);
    }
}

J'ai trouvé un exemple sur l'utilisation CustomDrawLink, mais fait tout le dessin à la main, ce qui est beaucoup de douleur et surpuissant. Je veux que le DevExpress « moteur » pour dessiner le lien, juste en utilisant un autre BackColor.

Était-ce utile?

La solution

La barre de navigation est une vraie douleur pour personnaliser ... la plupart du temps car il est conçu pour donner un aspect commun à tous les éléments de navigation (police de style, pas mon idée). Vous devez choisir l'un des styles de la peau qui fonctionne le mieux avec votre IUG (à connaître le système de la peau / LookAndFeel vaut le temps).

Utilisez ensuite les événements CustomDrawXXX du contrôle NavBar pour tous les besoins de peinture personnalisée:)

Vous pouvez également utiliser le concepteur de la peau DevX et créer une peau juste pour la barre de navigation.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top