Konuyu görüntüle
IUCODERS FORUM > Programlama > .NET > c#, datagrid deki hiücrlere eri?im
Yazar
mert


avatar
Kibris
Kayıt: 11.01.2006
23.08.2006-08:03 #9526
Bulunduğum şirkette bir client tool yazılıyorda, c# da datagrid lerdeki herhangi bir hücre içindeki veriye "click" yaparak nasıl erişebilirim ? Şöyle küçük bir metod örneği ya da aptala anlatır gibi anlatan bir site yok mudur bu olayı...
1.5 haftalık .net bilgisiyle bu kadar olur... Neyse çok geyik yaptım.

Şimdiden saolun.












Yazar
sinan


avatar

Kayıt: 08.02.2006
23.08.2006-12:20 #9527
şimdi mert olay cok basit..

datagrid kullandıgına gore buyuk bi ihtimalle verileri dataset e almışsındır. zaten e.RowIndex() click yaptıgın satırın index nosunu verir.

string firma_adi;
datarow satir;
satir = ds.tables["tablo adı"].rows[e.RowIndex];
firma_adi = satir[1].ToString();

datagridde tıkladıgın satırın 2. stunundaki firma adı bilgisini almanı saglıo... satırı dataset e baglı olarak tanımlıyosun ve bu satırın hangi sutunundaki veriyi alcaksanda o indisi satir[indis] şeklinde stringe atıosun...
kolay gelsin...





Yazar
kellad


avatar
istanbul
Kayıt: 21.01.2006
23.08.2006-16:09 #9528
Peki tıklanan sütun numarası da bu şekilde alınabiliyor mu?





Decompiling the code of universe.
Listening the cosmic background radiation.
Swimming in Inter Stellar Medium.
Yazar
mert


avatar
Kibris
Kayıt: 11.01.2006
23.08.2006-16:18 #9529
eyvallah abi de bu "e" dediğin nedir ? e.RowIndex de e objesi neyi sembolize ediyor.? Nereden buldun ? Ben bu RowIndex olayına baktım biraz ama başka işlerimde olduğundan net bişey çıkaramadım. Bişeyin command eventi ama neyin ? Bu arada 2003 kullanmaktayım 2005 den farkı var mı yok mu bilemem . Ben eski bilgi rica edeyim.

Bilgilerin için de sağ ol tekrar Sinan.












Yazar
kellad


avatar
istanbul
Kayıt: 21.01.2006
23.08.2006-16:35 #9530
DataGrid'de tıklanan satır bilgisi de sütun bilgisi de alınabiliyormuş.
Şu şekilmiş :
   
        private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {
            int i = e.ColumnIndex();
            int j = e.RowIndex;
        }

Bu fonksiyon için DataGrid'i çift tıkla.






Decompiling the code of universe.
Listening the cosmic background radiation.
Swimming in Inter Stellar Medium.
Yazar
mert


avatar
Kibris
Kayıt: 11.01.2006
23.08.2006-16:52 #9531
Engin saol abi de dediğim gibi ben .net 2003 kullanıyorum. dataGridView1_CellContentClick() metodu 2003 de yok. .net 2003 de nasıl yapılır bilgisi olan yok mudur ey C Sharp cılar!!!
Hadi dile pek sıcak değilim bari 2005 geçmeme izin verseler .












Yazar
kellad


avatar
istanbul
Kayıt: 21.01.2006
23.08.2006-17:28 #9532
Daha önce bu şekilde bir işlem yapmadığım için ben de acemisiyim bu konunun. Ama araştırıcam.





Decompiling the code of universe.
Listening the cosmic background radiation.
Swimming in Inter Stellar Medium.
Yazar
mert


avatar
Kibris
Kayıt: 11.01.2006
24.08.2006-09:15 #9537
Alın abi 2003 versiyonuyla böyle 4 satır için nerdeyse sabahladım. Benden adam olmaz...

private void DG_CurrentCellChanged(object sender, System.EventArgs e)
{
tb.Text = DG[T_PlanDG.CurrentCell.RowNumber,DG.CurrentCell.ColumnNumber].ToString();
}

DG burada datagridin adıdır.












Yazar
kellad


avatar
istanbul
Kayıt: 21.01.2006
24.08.2006-10:35 #9539
Ben de böyle yaptım ama senin ki daha kolaymış:
private void dataGrid1_CurrentCellChanged(object sender, System.EventArgs e)
		{
			//Seçili Hücrenin
			int i = dataGrid1.CurrentCell.ColumnNumber;		//Sütun sırası
			int j = dataGrid1.CurrentCell.RowNumber;		//Satır sırası
				
			textBox1.Text = i.ToString();		//Satır ve Sütun sıraları gösteriliyor.
			textBox2.Text = j.ToString();

			//Satır ve sütun sıraları belirli ise hücrenin içeriği gösteriliyor.
			if ( i >=0 && j >= 0 )
				textBox3.Text = dataSet1.Tables[0].Rows[j].ItemArray[i].ToString();
		
		}






Decompiling the code of universe.
Listening the cosmic background radiation.
Swimming in Inter Stellar Medium.
Del.icio.us
Digg
Facebook
Furl
Google
Blink
Simpy
Spurl
Y! MyWeb