dodání ihned! nové
Hledáme programátora do rostoucího týmu ITnetwork.cz, 100% home office, 100% flexibilní pracovní doba. Více informací
Avatar
Jakub Vaněk (Bubavanek):16.2.2014 14:38

Zdravím všichni. Chci se zeptat jak udělat automatický sorting ListBoxu?
Tedy když přidám do ListBoxu nějaký další item, aby se mi automaticky přetřídil např. dle abecedy.

Zatím hledám na googlu. Kdyby někdo věděl, asi by to bylo rychlejší.

Díky za radu.

 
Odpovědět
16.2.2014 14:38
Avatar
Odpovídá na Jakub Vaněk (Bubavanek)
Neaktivní uživatel:16.2.2014 16:30

Můžeš si např. vytvořit vlastní třídu, která bude dědit od třídy ListBox a přidat si vlastní metodu pro přidání (tzn. budeš používat odděděnou třídu, ne přímo ListBox). Mohlo by to vypadat např. takto

class ListBox1 : ListBox
{
    public void AddItem(MojeTrida Obj)
    {
        this.Items.Add(Obj);
        this.Items.SortDescriptions.Add(
        new SortDescription("NázevPropertyDleKteréSortovat",
        ListSortDirection.Ascending));
    }
}
Nahoru Odpovědět
16.2.2014 16:30
Neaktivní uživatelský účet
Avatar
Odpovídá na Jakub Vaněk (Bubavanek)
Jakub Lásko[Saarix]:16.2.2014 18:43

Nebo stačí pouze na itemech ListBoxu zavolat metodu OrderBy. :-)

ListBox lsb = new ListBox();
lsb.Items.OrderBy<TSource>(x => x.Name);
Editováno 16.2.2014 18:47
Nahoru Odpovědět
16.2.2014 18:43
Časem je vše možné.
Tento výukový obsah pomáhají rozvíjet následující firmy, které dost možná hledají právě tebe!
Avatar
Odpovídá na Jakub Lásko[Saarix]
Jakub Lásko[Saarix]:16.2.2014 18:55

Ale to použití metody OrderBy sem tu nenapsal použitelně, kdyžtak mrkni sem http://msdn.microsoft.com/….110%29.aspx

Nahoru Odpovědět
16.2.2014 18:55
Časem je vše možné.
Avatar
Jan Vargovský
Redaktor
Avatar
Odpovídá na Jakub Vaněk (Bubavanek)
Jan Vargovský:16.2.2014 19:02
ListBox.Sorted = true;
 
Nahoru Odpovědět
16.2.2014 19:02
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 5 zpráv z 5.