FONForum
http://www.fonforum.org/

ADO.NET - DataGrid - dva pitanja
http://www.fonforum.org/viewtopic.php?f=8&t=11461
Stranica 1 od 1

Autoru:  kliford [ 19.12.2007. 16:49:49 ]
Tema posta:  ADO.NET - DataGrid - dva pitanja

Oba problema sam probao da resim guglanjem i brljanjem po literaturi.. i nisam uspeo...

1. Postoji li neki event handler koji reaguje na selektovan red u DataGridu i koji vraca DataRow?

2. Postoji li nacin da 'zakljucam' DataGrid da ne moze korisnik rucno da menja njen sadrzaj? Probao sam da nadjem property editable ili changeable ili tako nesto, ali mi nije poslo za rukom.


Thanx ;)

Autoru:  Bageri [ 19.12.2007. 19:37:10 ]
Tema posta: 

Jel koristish VS2005?

1. Probaj sa Event-om CellClick(object sender, DataGridViewCellEventArgs e)...
Podatke o kliknutoj celiji izvlacish pomocu e.ColumnIndex i e.RowIndex.
2. Probaj sa:
- grid.locked = true;
ili sa
- grid.Columns[i].ReadOnly = true /*Ili neshto slicno, ali property je ReadOnly*/

Autoru:  DarkShine [ 20.12.2007. 06:14:10 ]
Tema posta: 

Da se nadovežem:

1. Pored CellClick, može i RowEnter, RowHeaderMouseClick, RowHeaderMouseDoubleClick (i ko zna šta sve još) na način koji je Bageri objasnio. Međutim, na ovaj način uvek dolaziš do indeksa selektovanog reda i, iskreno, ne znam da li postoji način da baš direktno dobiješ podatke tipa DataRow. Ako podatke vučeš iz tabele, problem je rešen sa DataRow dr = dt.Rows[e.RowIndex];.

Druga mogućnost je pristupanje redu preko property-ja CurrentRow, odnosnoDataRow dr = dt.Rows[grid.CurrentRow.Index]; što je pogodno i za situacije kada ne želiš da koristiš event-ove, ili želiš da koristiš neke druge (npr. SelectionChanged).

Ukoliko želiš vrednosti izabranog reda, možeš ih dobiti preko object item = grid.CurrentRow.Cells[i].Value; pa ih eventualno spakovati u DataRow.

(Doduše, ovo sve govorim za DataGridView, ne znam čime sve raspolaže DataGrid.)

2. Ovde grid.ReadOnly=true obavlja posao. Sa grid.Locked=true samo zaključavaš kontrolu, odnosno njenu poziciju na formi.

Autoru:  kliford [ 20.12.2007. 16:33:53 ]
Tema posta: 

e, hvala ppl ;)

Stranica 1 od 1 Sva vremena su u UTC + 1 sat
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/