korasoglu Posted December 14, 2016 Share Posted December 14, 2016 Arkadaşlar mdi form oluşturdum alt formu açtım ben alt formdan ana forma veri göndermek istiyorum. Yani Ana formdaki datagridler veri göndermek istiyorum nasıl yapabilirim. Quote Link to comment Share on other sites More sharing options...
KintaRo Posted December 15, 2016 Share Posted December 15, 2016 başka forma bir çok yoldan ulaşılabilir, sanırım Application.OpenForms işinizi görecektir: // form1'in kontrollerini döngüye sok foreach (Control item in Application.OpenForms["Form1"].Controls) { if (item.GetType() == typeof(DataGridView)) // eğer sıradaki kontrolün tipi datagridview ise { DataTable data = new DataTable(); data.Columns.Add("isim"); data.Columns.Add("şehir"); data.Columns.Add("yaş"); data.Rows.Add("ali", "hatay", "12"); data.Rows.Add("veli", "adana", "13"); data.Rows.Add("osman", "maraş", "14"); DataGridView grid = (DataGridView)item; grid.DataSource = data; break; // döngüyü durdur. } } Please register to see this content. Edit: Daha önce de belirtmiştim; eğer datagridview yani veri gönderilecek kontrol Groupbox, NavBar gibi başka bir kontrolün içindeyse o kontrole erişmek için bulunan kontroller tek tek döngüye sokulmalıdır. Ha yok gridview direk Form'un içindeyse bu kod geçerlidir. Quote Link to comment Share on other sites More sharing options...
korasoglu Posted December 15, 2016 Author Share Posted December 15, 2016 dosya tc yasaklı evde deneyebilirim tş ederim Quote Link to comment Share on other sites More sharing options...
KintaRo Posted December 15, 2016 Share Posted December 15, 2016 Please register to see this content. Quote Link to comment Share on other sites More sharing options...
korasoglu Posted December 18, 2016 Author Share Posted December 18, 2016 Hocam tamam harika bir örnek olmuş mantığını anladım. Peki ana formdan diğer formların boyutu nasıl değiştirebilirim. Quote Link to comment Share on other sites More sharing options...
korasoglu Posted December 18, 2016 Author Share Posted December 18, 2016 Hocam tamam harika bir örnek olmuş mantığını anladım. Peki ana formdan diğer formların boyutu nasıl değiştirebilirim. Edit: şu şekilde imiş foreach (Form item in Application.OpenForms) { if (item.Name == "Kisi") { item.Size = new System.Drawing.Size(1115, 575); } } Quote Link to comment Share on other sites More sharing options...
KintaRo Posted December 19, 2016 Share Posted December 19, 2016 şu şekilde de olabilir: Application.OpenForms["Form1"].Size = new System.Drawing.Size(1115, 575); Quote Link to comment Share on other sites More sharing options...
korasoglu Posted December 21, 2016 Author Share Posted December 21, 2016 Hocam tamam harika bir örnek olmuş mantığını anladım. Peki ana formdan diğer formların boyutu nasıl değiştirebilirim. Edit: şu şekilde imiş foreach (Form item in Application.OpenForms) { if (item.Name == "Kisi") { item.Size = new System.Drawing.Size(1115, 575); } } Evet Bu daha kolaymış. Quote Link to comment Share on other sites More sharing options...
korasoglu Posted December 22, 2016 Author Share Posted December 22, 2016 (edited) Hocam tamam harika bir örnek olmuş mantığını anladım. Peki ana formdan diğer formların boyutu nasıl değiştirebilirim. Edit: şu şekilde imiş foreach (Form item in Application.OpenForms) { if (item.Name == "Kisi") { item.Size = new System.Drawing.Size(1115, 575); } } ---------------------------------------------------------------------------------------------------------------------------- public static void bilgileriktar(string ad) { foreach (Control item in Application.OpenForms["ekle"].Controls) { if (item.GetType() == typeof(SplitContainer)) { foreach (Control kontrol in item.Controls) { if (kontrol.GetType() == typeof(DataGridView)) { if (kontrol.Name == ad) { break; } } } } } } Bu şekilde SplitContainer ulaşıyorum fakat içerisindeki datagride ulaşamıyorum sorun ne olabilir. Edited December 22, 2016 by korasoglu Quote Link to comment Share on other sites More sharing options...
KintaRo Posted December 23, 2016 Share Posted December 23, 2016 On 15.12.2016 at 11:51, KintaRo yazdı: Edit: Daha önce de belirtmiştim; eğer datagridview yani veri gönderilecek kontrol Groupbox, NavBar gibi başka bir kontrolün içindeyse o kontrole erişmek için bulunan kontroller tek tek döngüye sokulmalıdır. Ha yok gridview direk Form'un içindeyse bu kod geçerlidir. foreach (Control item in Application.OpenForms["ekle"].Controls) { if (item.GetType() == typeof(SplitContainer)) { foreach (Control kontrol in item.Controls) { if (kontrol.GetType() == typeof(SplitContainer)) { foreach (Control kontroller in kontrol.Controls) // splitcontainer içindeki kontrolleri döngüye sokuyoruz { if (kontroller.Name == ad) { // işte burada break; } } } } } } 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.