[ djmrky @ 21.04.2005. 08:07 ] @
1. pa dobro na koju foru se moze dobiti ukupan broj redova u DataGrid-u >:-(

2. jel mogu nekako da nateram DataGrid da se ponasa kao ListView u smislu da kad kliknem na neko mesto u njemu: (a)da se ne vidi kursor u toj celiji tj. (b)hocu da "poplavi" CEO red i da nista ne trepce (ne trebaju mi nikakva upisivanja direktno u DataGrid-u jer je ReadOnly)....ili moram koristiti DataView

...i generalno pitanje (mozda vise teoretsko):
U cilju resavanja problema 1., krenem redom da prozivam celije po redovima, pa kad pukne program - "toliko" ima redova....(ovakvo brojanje mi je vec lose jer traje dugo)
dakle, da li se namerno izazivanje exception-a smatra losim nacinom programiranja ili to moze (i treba) da bude metoda za postizanje cilja (koliko se ja secam neke teorije od nekad, cini mi se da dobar program ne bi NIKAD trebao da dozivi bilo kakav exception, ali sad nisam vise siguran u ovim "naprednim" c#-ovima i ostalim)

Pozdrav
[ krdr @ 22.04.2005. 16:27 ] @
Ako grid punis iz baze, mozes da prebrojis koliko ti redova vraca baza podataka. Radi uvek.

Za ovo drugo bi i ja voleo da znam. Takvu mogucnost ima Delphi (i jos neke koje bih ja voleo da vidim u VS.NET)
[ ZokiR @ 27.04.2005. 07:46 ] @
1. Broj redova možeš da dobiješ iz DataSource-a. Na primer, ako je grid napunjen iz DataTable objekta:

Code:
DataTable table = (DataTable)this.myDataGrid.DataSource;
int count = table.Rows.Count;


2. Može ovako:

Code:
private void myDataGrid_MouseUp(object sender, System.Windows.Forms.MouseEventArgs e)
{
    DataGrid.HitTestInfo ht = this.myDataGrid.HitTest(e.X, e.Y);

    if (ht.Type == DataGrid.HitTestType.Cell)
    {
        this.myDataGrid.Select(ht.Row);
    }
}


Inače si u pravu, namerno izazivanje exception-a se ne smatra dobrim pristupom u .NET-u. Treba ih koristiti za detektovanje izuzetnih situacija, nečega što se normalno ne događa. Ako kôd pri svom izvršavanju uvek diže exception, bez obzira kakav je state programa, to nije dobar kôd.
[ dezelin32 @ 04.05.2005. 10:01 ] @
Citat:
dakle, da li se namerno izazivanje exception-a smatra losim nacinom programiranja ili to moze (i treba) da bude metoda za postizanje cilja


Izazivanje exception-a je vremenski zahtevna operacija jer se mora izgenerisati stacktrace. Exception ne bi trebalo da koristis u situacijama u kojima mozes normalno da obradis gresku - bolje je vratiti false na izlazu iz metode nego izazvati izuzetak.

cheers
[ dltjbg @ 22.06.2005. 22:15 ] @
Kasno sam se ukljucio na formu, pa tek sada vidim ovo pitanje...

Naime, ono sto je ZokiR napisao je o.k. ako grid pokazuje podatke iz DataTable objekta bez ikakvih filtera, medjutim ako imas filtere onda mozes da uradis ovako:

Code:

BindingManagerBase bm = grid.BindingContext[grid.DataSource, grid.DataMember];
int count = bm.Count;


Pozdrav