C#.Net ile DataGridView içinde veri gösterimi..

C#.Net öğrenmeye, ilgilenmeye yeni yeni başlıyorum. Bildiklerimi, gördüklerimi ve yaptıklarımı sizlerle paylaşmak istedim. Webde bir çok kaynak bulunmasına rağmen sıfırdan başlayan birinin işine yarayacak kaynak malesef oldukça az. Aşşağıdaki kodlar sayesinde veritabanındaki kayıtları oldukça basit bir şekilde listeleyebilir veya filtreleyebilirsiniz. Bu yapı sayesinde her seferinde veritabanı bağlantısını ve datagridview ile ilgili diğer tanımlamaları yapmak zorunda kalmıyorsunuz. Sadece istediğiniz sql sorgusunu yolluyorsunuz okadar.. Terimlerde veya ifadelerimde hata varsa affola :)

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;

namespace WindowsFormsApplication2
{
    public partial class Form2 : Form
    {
        public Form2()
        {
            InitializeComponent();
        }

        public void Form2_Load(object sender, EventArgs e)
        {
            griddoldur("select * from tabloadi"); // form yüklendiğinde, yani program ilk çalıştığında bu sorguyla birlikte datagridview1 nesnemizi dolduruyoruz.

        }

        public void griddoldur(string sqlCumle) {
            string ConStr = "Server=veritabani_adresi; Database=veritabani_adi; uid=kullanici_adi; " +
                               "pwd=sifre;pooling=true; connection lifetime=10; connection timeout=5; packet size=1024;";
            SqlConnection conn = new SqlConnection(ConStr);
            string sql = sqlCumle; // sql cümlemiz fonksiyonumuzdan değişken bir biçimde geliyor. bkz: griddoldur(string sqlCumle)
            SqlDataAdapter da = new SqlDataAdapter(sql, conn);
            DataSet ds = new DataSet();
            da.Fill(ds);
            dataGridView1.DataSource = ds.Tables[0]; // veritabanına bağlanıp son olarakda dataGridView1 veri kaynağını dataadaptere bağlıyoruz.
        }

        private void buton1_Click(object sender, EventArgs e)
        {
            griddoldur("select * from digertabloadi"); // butona tıkladığımızda diğer tablodaki verileri datagridview1 nesnesinde görüntüleyebiliriz.
        }

        private void buton2_Click(object sender, EventArgs e)
        {
            griddoldur("SELECT * from tabloadi where alanadi = "+textbox1.text+" ") // istediğimiz gibi şekillendirebiliriz. bu sayede herseferinde yeniden yeniden kodlar yazmamıza gere kalmaz.
        }

    }
}
  • http://www.dmtes.com Mustafa DANABAŞI

    C# yeni öğreniyorum. Yazdığınız makale çok işime yaradı. Teşekkürler

  • apoStyLEE

    Ne mutlu bana :)

  • önder yıldırım

    hocam bende yeni başladım 2-3 gündür biraz daha açık anlatırmısın

  • tete

    DataSet kullanmışsın burada DataGridView değil

  • http://ads apoStyLEE

    DataSet ile DataGridView’ in içini dolduruyoruz. dataGridView1.DataSource = ds.Tables[0];

  • http://www.ankakedisi.wordpress.com nedim kaya

    eline sağlık, güzel paylaşım.

  • http://www.xcharp.com necrowian

    iyi güzel konuda bu işleri linq ile yapsanız daha bi akıllıca olur yazdığın kodda veri tabanı güvenliği sıfır bu kod teknolojisiyle, mesela sql de — işareti c# daki // commend i gibi çalışır buna örnek olarak diyelim ki veritabanından kullanıcı adı parola kontrol ederek biryere giriş yapıcam eğer oraya — yazarsam sql deki sorgu commend e dönüşür ve hiç bi sorguya mağruz kalmadan giriş yaparım..

  • http://asd apoStyLEE

    Merhaba, linq konusunda yeterli bilgiye sahip olmadığımdan ve bu yazıyı c# ile yeni tanışacak veya tanışmış insanlara kafa karıştırmadan vt işlemlerini göstermek için yazmıştım. Güvenlik konusuna gelince uygulamada bu tarz bir kullanım tabiki yanlıştır, enjeksiyon saldırıları için gerekli önlemleri almakta fayda var. Eğer linq e sadece güvenlik olarak bakıyorsanız sizde yanlış düşünüyorsunuz.

  • yns.emre

    @necrowian arkadaşım bu işler illa linq ile yapılacak diye birşey yok büyük erp projelerinde her kodlayanın kendine göre oluşturduğu object oriented yapılar vardır,linq sadece güvenlik için oluşturulmuş bir sorgu dili değildir,burdaki konu başlığında “c# ile datagridview içinde veri gösterimi” yazmaktadır,ben güvenlikle alakalı bi başlık göremedim,merak etme senin bildiğin teknolojileri biz de biliyoruz ve kullanıyoruz,ama gidip bi yerlerde bilmişlik taslamıyoruz !!!

  • http://www.youtubeline.com youtubeline

    teşekkürler güzel çalışma

  • Vhalim

    databind etmeyi unutmuşsunuz.

  • http://www.youtubeline.com youtubeline

    güzel olmuş

  • http://Websitesi emre


    Vhalim:

    databind etmeyi unutmuşsunuz.

    uygulama windowsformapplication oldugu için databind işlemi gerektirmez…

  • umut

    c# da comboboxdaki bir itemi datagridwievde göstermek istiyorum yardım edebilecek biri varmı?

  • ismail

    çok işime yaradı. kaç gündür uğraşıyordum bir türlü olmuyordu. bu kod işimi gördü. çok teşşekkür ederim

  • burak canakcı

    teşekkürler.koduna zeval gelmesin .. :)

  • http://bakburaya.blogspot.com/ Bakburaya

    Paylaşımın için teşekkür ederim.

  • Gokay

    Kardeş benim ödevim Var
    konu:form açıldığında yan yana 5 tana label oluşacak ve bunlarda harfler hızlı bir şekilde saymaya başlıcak ve time2 belirlediğimiz sürede durucak (anlamlı anlamsız kelime fark etmez)
    bu :D başaramadım yardımınızı bekliyorum