Diskuze: Datagridview datasource
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
Člen
Zobrazeno 9 zpráv z 9.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
Řazení podle sloupců by mělo jít normálně, je to vlastnost toho DataGridu
Asi jsem se špatně vyjadřil jde mi o to když kliknu na hlavičku sloupce
tak se položky seřadí podle kriteria. Myslím že toto je taky vlastnost
gridu ale nevim jak ji aktivovat.
Diky
Nikdy jsem nepotřeboval nic aktivovat, to řazení mi šlo vždycky
automaticky samo...
Používám na data kolekci ObservableCollection (podle místního
tutoriálu)
Hm to je hezky nicmene pri napojeni na list kolekci to nejede . A pri pouziti linq je list tak trochu nejjednodussi reseni . Mozna se to jinak chova pri napojeni do pole .
Trošku mi to připadá, že mícháš různé věci dohromady. "Použití linq" je jen způsob, jak dostat data do kolekce. Jestli je to jen List nebo ObservableCollection je přeci úplně šumák. Samotné napojení DataGridu na kolekci máš provedeno jak? Ukaž nějaký kód, ať se hneme z místa...
Nic složiteho
var qry2 = from z in db.Zasahs
from k in db.Adresars
from u in db.Uzivateles
where (z.pro_technika.Trim() == xxx || z.sdileno.Trim() == xx) && z.id_zakaznika == k.ico && z.id_uzivatele == u.Id && z.datum.Value.Year == rok
orderby z.datum descending
select new { z.id_zasahu, z.datum, k.nazev, z.pro_technika, z.popis_zavady, z.poslan_vykaz, z.fakturovano, z.fakturovany_dily, z.stav, z.sdileno, z.upraveno, z.vytvoreno };
grd_zasahy.DataSource = qry2.ToList();
Tak jsem vyzkoušel napojeni pres tableAdapter a tam vše jede normálně tak je pravděpodobně problém někde v kolekci list . Pročetl jsem už kde co ale výsledek 0.
Tak konečně jsem našel řešení tady ho nabízím :
BindingSource b = new BindingSource();
b.DataSource = from z in db.Zasahs
from k in db.Adresars
from u in db.Uzivateles
where z.id_zakaznika == k.ico && z.id_uzivatele == u.Id
orderby z.datum descending
select new { z.id_zasahu };
grd_zasahy.DataSource = b;
Pokud se pro získání dat z db používá LinqtoSql nbízí se možnost připojit data do datagrid kolekcí List. Bohužel při tomto způsobu nefunguje řazení záznamů po kliknutí na hlavičku sloupce. Pokud se použije tato možnost řazení funguje.
Zobrazeno 9 zpráv z 9.