korasoglu Posted August 29, 2016 Share Posted August 29, 2016 Arkadaşlar diyelim ki formda 3 tane datagrit var ben bunları döngü içerisinde çeksem ve her tekrarda datagrid1-2-3 diye kullanacak olsam nasıl bir yol izlemem lazımdır. Quote Link to comment Share on other sites More sharing options...
KintaRo Posted August 30, 2016 Share Posted August 30, 2016 // formdaki kontrolleri döngüye sok foreach (Control item in this.Controls) { if (item.GetType() == typeof(DataGridView)) // eğer kontrol tipi datagridview ise { MessageBox.Show(item.Name); } } yalnız bu kodun çalışması için gridlerin direk formda olması gerekiyor. Eğer gridler groupbox, panel, strip gibi nesnelerin içindeyse o zaman kodlar değişir. 1 Quote Link to comment Share on other sites More sharing options...
korasoglu Posted August 30, 2016 Author Share Posted August 30, 2016 Peki dediğiniz gibi gridler groupbox, panel, strip gibi nesnelerin içindeyse veya class daysa nasıl olur hocam. Quote Link to comment Share on other sites More sharing options...
KintaRo Posted August 31, 2016 Share Posted August 31, 2016 bu sefer de döngü içinde döngü kullanabilirsiniz. Yani önce form içindeki kontrolleri döngüye sokup içindeki groupbox'i bulmalı, sonra onun içindeki kontrolleri de döngüye sokup içindeki kontrollerden datagridviewleri bulmalısınız. foreach (Control item in this.Controls) { if (item.GetType() == typeof(GroupBox)) // eğer kontrol tipi groupbox ise { GroupBox grp = (GroupBox)item; // item i groupbox a çevir foreach (Control kontrol in grp.Controls) // groupbox in içindeki kontrolleri döngüye sok { if (kontrol.GetType() == typeof(DataGridView)) // eğer kontrol tipi dataGridView ise { MessageBox.Show(kontrol.Name); // dataGridView'in ismini ekrana yazdır } } } } eğer groupbox ismi belli ise ya da bir tane varsa form kontrollerini döngüye sokmanıza gerek yok. 2. döngüyü kullanmanız yeterli olur. Quote Link to comment Share on other sites More sharing options...
korasoglu Posted September 3, 2016 Author Share Posted September 3, 2016 yardımınızdan dolayı teşekkür ederim güzel bir bilgiydi. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.