Soran
Clastan çağırdığım fonksiyonla datagridview doldurma sorunu

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
- Değiştirilmiş Tür Kyamuran SalibryamMicrosoft contingent staff, Moderator 22 Aralık 2016 Perşembe 01:18
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(); } //...
-
-
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; }
-
-
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
-
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
-