none
Clastan çağırdığım fonksiyonla datagridview doldurma sorunu RRS feed

  • Genel Tartışma

  • merhabalar helpers adlı clasımdan oluşturduğum  fonksiyonu formun load eventinde çağırıyorum.  Fakat bi yerde eksik var sanırım yardım ederseniz sevinirim.

    form 1 load olayı kodu: 
    private void adminPage_Load(object sender, EventArgs e)
            {
                try
                {
                    helpers.kullaniciDtDoldur();

                    kullaniciDt.Columns["kullanici_id"].HeaderText = "ID";
                    kullaniciDt.Columns["kullanici_adi"].HeaderText = "Kullanıcı Adı";
                    kullaniciDt.Columns["kullanici_isimsoyisim"].HeaderText = "İsim Soyİsim";
                    kullaniciDt.Columns["kullanici_sirket_adi"].HeaderText = "Şirket Adı";
                    kullaniciDt.Columns["eposta_adresi"].HeaderText = "E-Posta Adresi";
                    kullaniciDt.Columns["kullanici_sirket_iletisim"].HeaderText = "İletişim";
                    kullaniciDt.Columns["baslangic_tarihi"].HeaderText = "Başlama Tarihi";
                    kullaniciDt.Columns["kullanici_parola"].HeaderText = "Kullanıcı Parola";

                    kullaniciDt.Columns["baslangic_tarihi"].DefaultCellStyle.Format = "MM/dd/yyyy hh:mm:ss tt";
                    kullaniciDt.RowsDefaultCellStyle.Font = new System.Drawing.Font("Comic Sans MS", 7, FontStyle.Bold);
                    kullaniciDt.RowsDefaultCellStyle.ForeColor = Color.DarkGray;
                    kullaniciDt.RowsDefaultCellStyle.BackColor = Color.Black;
                    kullaniciDt.DefaultCellStyle.SelectionBackColor = Color.DodgerBlue;
                    kullaniciDt.DefaultCellStyle.SelectionForeColor = Color.White;
                    kullaniciDt.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill;
                    kullaniciDt.ColumnHeadersDefaultCellStyle.Font = new System.Drawing.Font("Times New Roman", 9, FontStyle.Bold);
                    kullaniciDt.ColumnHeadersDefaultCellStyle.BackColor = Color.Black;
                    kullaniciDt.ColumnHeadersDefaultCellStyle.ForeColor = Color.White;
                    kullaniciDt.EnableHeadersVisualStyles = false;


                }
                catch (DbEntityValidationException ex)
                {
                    MessageBox.Show(ex.EntityValidationErrors.ToString());
                }
                
            }


    buda classstaki fonksiyonum

     public void kullaniciDtDoldur()
            {
                adminPage adminForm1 = new adminPage();
                try
                {
                    var sorgu = from p in context.kullanici
                                select new
                                {
                                    p.kullanici_id,
                                    p.kullanici_adi,
                                    p.kullanici_isimsoyisim,
                                    p.kullanici_parola,
                                    p.kullanici_sirket_adi,
                                    p.kullanici_sirket_iletisim,
                                    p.eposta_adresi,
                                    p.baslangic_tarihi
                                };
                    adminForm1.kullaniciDt.DataSource = sorgu.ToList();
                }
                catch (DbEntityValidationException ex)
                {

                    MessageBox.Show(ex.EntityValidationErrors.ToString());
                }
            }


    mskorkt

    18 Aralık 2016 Pazar 10:46

Tüm Yanıtlar

  • Metodunda yeni bir form aciyorsun. Sanirim dogrusu soyle olmaliydi:

    public void kullaniciDtDoldur()
    {
                try
                { 
    kullaniciDt.DataSource = null;
    
                    var sorgu = from p in context.kullanici
                                select new
                                {
                                    p.kullanici_id,
                                    p.kullanici_adi,
                                    p.kullanici_isimsoyisim,
                                    p.kullanici_parola,
                                    p.kullanici_sirket_adi,
                                    p.kullanici_sirket_iletisim,
                                    p.eposta_adresi,
                                    p.baslangic_tarihi
                                };
                    kullaniciDt.DataSource = sorgu.ToList();
                }
    //...

    18 Aralık 2016 Pazar 12:48
    Yanıtlayıcı
  • hayır yeni bir form açmıyorum,  adminPage adlı formumdaki  datagridvieve kendi oluşturduğum Helper classı içindeki Kullanicidtdoldur methoduyla  veri çekyorum.. sizin dediğiniz şekilde de denedim fakat datagride aktarmıyor.

    mskorkt

    18 Aralık 2016 Pazar 13:36
  •  adminPage adminForm1 = new adminPage();

    Bu yeni bir form degil mi? Diger orneginizde de yeni form yaratiyorsunuz.

    helpers icerisinde kullaniciDt'ye referans olmasi pek mantikli degil ve muhtemelen hata orada.

    Bence oradan kullaiciDt referansini kaldirip geriye List dondurun. Bu haliyle, anonymous bir tip kullandiginiz icin, isiniz biraz zor olacak. Onu tiplendirin ya da dynamic kullanin.

    private void adminPage_Load(object sender, EventArgs e)
    {
    	try
    	{
    		kullaniciDt.DataSource = null;
    		var kullanicilar = helpers.kullaniciDtDoldur();
    		kullaniciDt.DataSource = kullanicilar;
    
    
    		kullaniciDt.Columns["kullanici_id"].HeaderText = "ID";
    		kullaniciDt.Columns["kullanici_adi"].HeaderText = "Kullanıcı Adı";
    		kullaniciDt.Columns["kullanici_isimsoyisim"].HeaderText = "İsim Soyİsim";
    		kullaniciDt.Columns["kullanici_sirket_adi"].HeaderText = "Şirket Adı";
    		kullaniciDt.Columns["eposta_adresi"].HeaderText = "E-Posta Adresi";
    		kullaniciDt.Columns["kullanici_sirket_iletisim"].HeaderText = "İletişim";
    		kullaniciDt.Columns["baslangic_tarihi"].HeaderText = "Başlama Tarihi";
    		kullaniciDt.Columns["kullanici_parola"].HeaderText = "Kullanıcı Parola";
    
    		kullaniciDt.Columns["baslangic_tarihi"].DefaultCellStyle.Format = "MM/dd/yyyy hh:mm:ss tt";
    		kullaniciDt.RowsDefaultCellStyle.Font = new System.Drawing.Font("Comic Sans MS", 7, FontStyle.Bold);
    		kullaniciDt.RowsDefaultCellStyle.ForeColor = Color.DarkGray;
    		kullaniciDt.RowsDefaultCellStyle.BackColor = Color.Black;
    		kullaniciDt.DefaultCellStyle.SelectionBackColor = Color.DodgerBlue;
    		kullaniciDt.DefaultCellStyle.SelectionForeColor = Color.White;
    		kullaniciDt.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill;
    		kullaniciDt.ColumnHeadersDefaultCellStyle.Font = new System.Drawing.Font("Times New Roman", 9, FontStyle.Bold);
    		kullaniciDt.ColumnHeadersDefaultCellStyle.BackColor = Color.Black;
    		kullaniciDt.ColumnHeadersDefaultCellStyle.ForeColor = Color.White;
    		kullaniciDt.EnableHeadersVisualStyles = false;
    
    	}
    	catch (Exception ex)
    	{
    		MessageBox.Show(ex.Message);
    	}
    }
    
    
    public IEnumerable<Kullanici> kullaniciDtDoldur()
    {
    	List<Kullanici> kullanicilar = new List<Kullanici>();
    	try
    	{
    		var sorgu = from p in context.kullanici
    					select p;
    		kullanicilar = sorgu.ToList();
    	}
    	catch (DbEntityValidationException ex)
    	{
    		MessageBox.Show(ex.EntityValidationErrors.ToString());
    	}
    	catch (Exception ex)
    	{
    		MessageBox.Show(ex.Message);
    	}
    	return kullanicilar;
    }
    

    18 Aralık 2016 Pazar 14:48
    Yanıtlayıcı
  • şuan çalıştı çok teşekkür ederim .. Çok çok sağolun..

    mskorkt

    18 Aralık 2016 Pazar 15:06
  • peki bu metodun içinde 

    bunları nasıl yaptırırız

    kullaniciDt.Columns["kullanici_id"].HeaderText = "ID";
    		kullaniciDt.Columns["kullanici_adi"].HeaderText = "Kullanıcı Adı";
    		kullaniciDt.Columns["kullanici_isimsoyisim"].HeaderText = "İsim Soyİsim";
    		kullaniciDt.Columns["kullanici_sirket_adi"].HeaderText = "Şirket Adı";
    		kullaniciDt.Columns["eposta_adresi"].HeaderText = "E-Posta Adresi";
    		kullaniciDt.Columns["kullanici_sirket_iletisim"].HeaderText = "İletişim";
    		kullaniciDt.Columns["baslangic_tarihi"].HeaderText = "Başlama Tarihi";
    		kullaniciDt.Columns["kullanici_parola"].HeaderText = "Kullanıcı Parola";
    
    		kullaniciDt.Columns["baslangic_tarihi"].DefaultCellStyle.Format = "MM/dd/yyyy hh:mm:ss tt";
    		kullaniciDt.RowsDefaultCellStyle.Font = new System.Drawing.Font("Comic Sans MS", 7, FontStyle.Bold);
    		kullaniciDt.RowsDefaultCellStyle.ForeColor = Color.DarkGray;
    		kullaniciDt.RowsDefaultCellStyle.BackColor = Color.Black;
    		kullaniciDt.DefaultCellStyle.SelectionBackColor = Color.DodgerBlue;
    		kullaniciDt.DefaultCellStyle.SelectionForeColor = Color.White;
    		kullaniciDt.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill;
    		kullaniciDt.ColumnHeadersDefaultCellStyle.Font = new System.Drawing.Font("Times New Roman", 9, FontStyle.Bold);
    		kullaniciDt.ColumnHeadersDefaultCellStyle.BackColor = Color.Black;
    		kullaniciDt.ColumnHeadersDefaultCellStyle.ForeColor = Color.White;
    		kullaniciDt.EnableHeadersVisualStyles = false;

    mskorkt

    18 Aralık 2016 Pazar 15:16
  • datagridin oldupu yerde bir fonksiyon oluşturuyorum çalışıyor lakin aynı fonksiyonu helpers adlı classa taşıyorum çalışmıyor 

    public void DtAyar()
            {
                kullaniciDt.Columns["kullanici_id"].HeaderText = "ID";
                kullaniciDt.Columns["kullanici_adi"].HeaderText = "Kullanıcı Adı";
                kullaniciDt.Columns["kullanici_isimsoyisim"].HeaderText = "İsim Soyİsim";
                kullaniciDt.Columns["kullanici_sirket_adi"].HeaderText = "Şirket Adı";
                kullaniciDt.Columns["eposta_adresi"].HeaderText = "E-Posta Adresi";
                kullaniciDt.Columns["kullanici_sirket_iletisim"].HeaderText = "İletişim";
                kullaniciDt.Columns["baslangic_tarihi"].HeaderText = "Başlama Tarihi";
                kullaniciDt.Columns["kullanici_parola"].HeaderText = "Kullanıcı Parola";

                kullaniciDt.Columns["baslangic_tarihi"].DefaultCellStyle.Format = "MM/dd/yyyy hh:mm:ss tt";
                kullaniciDt.RowsDefaultCellStyle.Font = new System.Drawing.Font("Comic Sans MS", 7, FontStyle.Bold);
                kullaniciDt.RowsDefaultCellStyle.ForeColor = Color.DarkGray;
                kullaniciDt.RowsDefaultCellStyle.BackColor = Color.Black;
                kullaniciDt.DefaultCellStyle.SelectionBackColor = Color.DodgerBlue;
                kullaniciDt.DefaultCellStyle.SelectionForeColor = Color.White;
                kullaniciDt.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill;
                kullaniciDt.ColumnHeadersDefaultCellStyle.Font = new System.Drawing.Font("Times New Roman", 9, FontStyle.Bold);
                kullaniciDt.ColumnHeadersDefaultCellStyle.BackColor = Color.Black;
                kullaniciDt.ColumnHeadersDefaultCellStyle.ForeColor = Color.White;
                kullaniciDt.EnableHeadersVisualStyles = false;

                kullaniciDt.Columns["notlar"].Visible = false;
                kullaniciDt.Columns["firmalar"].Visible = false;
                kullaniciDt.Columns["personel"].Visible = false;
                kullaniciDt.Columns["urunler"].Visible = false;
                kullaniciDt.Columns["kullanici_yetki"].Visible = false;
            }

    mskorkt

    18 Aralık 2016 Pazar 15:25
  • kullaniciDt'yi parametre olarak gonder.
    18 Aralık 2016 Pazar 15:54
    Yanıtlayıcı