NOVINKA - Online rekvalifikační kurz Python programátor. Oblíbená a studenty ověřená rekvalifikace - nyní i online.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
Petr Nymsa
Tvůrce
Avatar
Petr Nymsa:22.4.2013 21:45

Opět dotaz :). Potřeboval bych aby měl item v listobxu každý item různou barvu. Itemy které už mám přidané jako označené a připravené pro zpracování bych chtěl označit čeveně, ostatní černě. Našel jsem si event DrawItem a vlastnost Draw nastavit na OwnerDrawFixed. V eventu mám toto

e.DrawBackground();
           Graphics g = e.Graphics;

           ListBox send = (ListBox)sender;
           OwnXmlNode item = (OwnXmlNode)send.Items[e.Index];
           string text = item.ToString();
            if (e.State == DrawItemState.Selected)
           {
               g.FillRectangle(new SolidBrush(Color.Blue), e.Bounds);
               g.DrawString(text,
                   e.Font, Brushes.Red, e.Bounds, StringFormat.GenericDefault);
           }
           else
           {
               g.FillRectangle(new SolidBrush(Color.White), e.Bounds);
               g.DrawString(text,
                   e.Font, Brushes.Black, e.Bounds, StringFormat.GenericDefault);
           }

           e.DrawFocusRectangle();

Text se vykreslí v pohodě ale na select, checked, focu to nereagje. Nějaká rada ? Vím, že tam opět bude nějaká malá hloupost :)

Odpovědět
22.4.2013 21:45
Pokrok nezastavíš, neusni a jdi s ním vpřed
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 1 zpráv z 1.