21 Şubat 2014 Cuma

28 Ocak 2014 Salı

DataTable içerisindeki kayıtları distinct ile tekil hale getirme


var stsil =
dtLISTE.AsEnumerable().Select(row => new {dyeri = row.Field<string>("DOGUMYERI")})
.Distinct();
 

26 Ocak 2014 Pazar

devexpress TileControl kullanımı

Toolbar da bulunan Navigation & Layout sekmesindeki TileControl kontrolü ile Windows 8 menüsüne benzer menüler yapmanız mümkündür. Bunun için yapmanız gerekenler çok basit

1. Formunuza bir tane TileControl kontrolü ekleyin.
2. Eklediğiniz kontrolü tıklayıp Mouse un sağ tuşuna basarak Add Group seçeneği ile bir grup ekleyin.
3. Eklediğiniz grubu seçip (Mouse ile tıklayıp) Mouse un sağ tuşuna basarak grup içerisine Add Item veya Add Large Item seçeneklerine basarak menü tuşlarını oluşturup kullanabilirsiniz. Kaç tane butona ihtiyacınız varsa o kadar eklemeniz yeterli.
4. Her buton içerisine Image ve text metin yazmanız mümkün (buton kontrolü gibi)


Eğer bu işlemi menüden değilde kodlar ile yapmak isterseniz.

1. Ekrana bir tane buton ve bir tane TileControl kontrolü ekleyip TileControl içerisine Add Group ile bir tane grup ekleyin.

2. Eklediğimiz butonu çift tıklayarak içerisine bu grup içerisinde olmasını istediğimiz itemleri ekleyen kodlarımızı aşağıdaki şekilde yazın.

DevExpress.XtraEditors.TileItem tus1 = new DevExpress.XtraEditors.TileItem();
tus1.Name = "Tus1";
tus1.Text = "kam";
tus1.ItemClick += new DevExpress.XtraEditors.TileItemClickEventHandler(tus1_ItemClick);
tileGroup1.Items.Add(x1);

private void Tus1_ItemClick(object sender, DevExpress.XtraEditors.TileItemEventArgs e)
{
            MessageBox.Show(e.Item.Name);
}

23 Ocak 2014 Perşembe

Devexpress gridControl ü yazıcıya yazdırma

Yeni bir proje açıp formumuzun üzerine bir tane GridControl bir tane Button kontrolü ekleyelim.
butonnun click eventina aşağıdaki kodları yazalım.

 
SqlConnection sc = new SqlConnection(@"Server = server_adi; user = sql_kullanici_adi; pwd = sifreniz; database = veri_tabani_adi;");
 
 
SqlCommand cmd = new SqlCommand("Select * from Musteriler ", sc);
DataTable dtCariler = new DataTable();
sc.Open();
dtCariler.Load(cmd.ExecuteReader());
gridControl1.DataSource = dtCariler;

//sorgu sonucunda dönen tüm kolonları gridview içerisinde görüntülenmesini aşağıdaki kod sağlar
gridView1.PopulateColumns();
gridView1.Columns[0].Caption = "Müşteri Kodu";

 
gridView1.Columns[1].Caption = "Müşteri Adı";
gridView1.Columns[2].Caption = "Müşteri Telefonu";
sc.Close();
 
 
 
Formumuza ikinci bir buton ekleyip onun click eventınada aşağıdaki kodu yazalım

gridControl1.ShowPrintPreview();
 
 
  
 
 


 

20 Ocak 2014 Pazartesi

LINQ where

Linq ile kayıtları filtrelemek için where kelimesi kullanılabilir.

 public class Kayit
 {
            public string isim { get; set; }
            public string dyeri { get; set; }
            public string cinsiyeti { get; set; }
            public int yasi { get; set; }
}
yine bir buton ve datagridview ekleyip forma butonun click eventına

            List<Kayit> KayitListesi = new List<Kayit>
            {
                new Kayit {isim = "Ali", dyeri = "Bursa", cinsiyeti = "Erkek", yasi = 20},
                new Kayit {isim = "Ayşe", dyeri = "İzmir", cinsiyeti = "Bayan", yasi = 10},
                new Kayit {isim = "Veli", dyeri = "Bursa", cinsiyeti = "Erkek", yasi = 30},
                new Kayit {isim = "Cem", dyeri = "Bursa", cinsiyeti = "Erkek", yasi = 15},
                new Kayit {isim = "Can", dyeri = "Bursa", cinsiyeti = "Erkek", yasi = 18},
                new Kayit {isim = "Mine", dyeri = "İzmir", cinsiyeti = "Bayan", yasi = 18},
                new Kayit {isim = "Oya", dyeri = "Bursa", cinsiyeti = "Bayan", yasi = 11},
                new Kayit {isim = "Metin", dyeri = "Bursa", cinsiyeti = "Erkek", yasi = 23},
                new Kayit {isim = "Ayça", dyeri = "Bursa", cinsiyeti = "Bayan", yasi = 25},
                new Kayit {isim = "Ayşe", dyeri = "Van", cinsiyeti = "Bayan", yasi = 34}
            };
            //A ile başlayan isimleri seçer.
            var liste = from x in KayitListesi where x.isim.StartsWith("A") select x;
            dataGridView1.DataSource = liste.ToList();

            //ismi 5 harften oluşan kayıtları seçer
            var liste = from x in KayitListesi where x.isim.Length == 5 select x;
            dataGridView1.DataSource = liste.ToList();
           //sonu i ile biten isimleri seçer.
            var liste = from x in KayitListesi where x.isim.EndsWith("i") select x;
            dataGridView1.DataSource = liste.ToList();

IENumerable - LINQ - Take - Skip

Formumuza bir buton bir datagridview koyalım.
        public class Kayit
        {
            public string isim { get; set; }
            public string dyeri { get; set; }
            public string cinsiyeti { get; set; }
            public int yasi { get; set; }
        }
       
        butonumuzun click eventına

            List<Kayit> KayitListesi = new List<Kayit>
            {
                new Kayit {isim = "Ali", dyeri = "Bursa", cinsiyeti = "Erkek", yasi = 20},
                new Kayit {isim = "Ayşe", dyeri = "İzmir", cinsiyeti = "Bayan", yasi = 10},
                new Kayit {isim = "Veli", dyeri = "Bursa", cinsiyeti = "Erkek", yasi = 30},
                new Kayit {isim = "Cem", dyeri = "Bursa", cinsiyeti = "Erkek", yasi = 15},
                new Kayit {isim = "Can", dyeri = "Bursa", cinsiyeti = "Erkek", yasi = 18},
                new Kayit {isim = "Mine", dyeri = "İzmir", cinsiyeti = "Bayan", yasi = 18},
                new Kayit {isim = "Oya", dyeri = "Bursa", cinsiyeti = "Bayan", yasi = 11},
                new Kayit {isim = "Metin", dyeri = "Bursa", cinsiyeti = "Erkek", yasi = 23},
                new Kayit {isim = "Ayça", dyeri = "Bursa", cinsiyeti = "Bayan", yasi = 25},
                new Kayit {isim = "Ayşe", dyeri = "Van", cinsiyeti = "Bayan", yasi = 34}
            };
IEnumerable<Kayit> liste = KayitListesi.Take(4); //ilk 4 kaydı alır.
dataGridView1.DataSource = liste.ToList();

IEnumerable<Kayit> liste = KayitListesi.Skip(2); //ilk 2 kayıttan sonraki kayıtları alır            dataGridView1.DataSource = liste.ToList();

17 Ocak 2014 Cuma

LINQ ile kayıtlarda SUM, MAX,MIN kullanımı

1. Formumuz üzerine bir tane datagridview bir tane button ekleyelim. 
2. F7 tuşuna basarak kod yazım ekranına geçelim.
3. Aşağıdaki şekilde bir class yazalım.
        public class Kayit
        {
            public string isim { get; set; }
            public string dyeri { get; set; }
            public string cinsiyeti { get; set; }
            public int yasi { get; set; }
        }
4. Form üzerindeki butonumuzu tıklayıp içine
           //öncelikle Kayit tipinde bir Generic List tanımlayıp içerisini aşağıdaki şekilde dolduruyoruz.
            List<Kayit>  KayitListesi = new List<Kayit>
            { 
                new Kayit {isim = "Ali", dyeri = "Bursa", cinsiyeti = "Erkek", yasi = 20},
                new Kayit {isim = "Ayşe", dyeri = "İzmir", cinsiyeti = "Bayan", yasi = 10},
                new Kayit {isim = "Veli", dyeri = "Bursa", cinsiyeti = "Erkek", yasi = 30},
                new Kayit {isim = "Cem", dyeri = "Bursa", cinsiyeti = "Erkek", yasi = 15},
                new Kayit {isim = "Can", dyeri = "Bursa", cinsiyeti = "Erkek", yasi = 18},
                new Kayit {isim = "Mine", dyeri = "İzmir", cinsiyeti = "Bayan", yasi = 18},
                new Kayit {isim = "Oya", dyeri = "Bursa", cinsiyeti = "Bayan", yasi = 11},
                new Kayit {isim = "Metin", dyeri = "Bursa", cinsiyeti = "Erkek", yasi = 23},
                new Kayit {isim = "Ayça", dyeri = "Bursa", cinsiyeti = "Bayan", yasi = 25},
                new Kayit {isim = "Ayşe", dyeri = "Van", cinsiyeti = "Bayan", yasi = 34}
            };
            var liste = from x in KayitListesi select x.yasi;
            MessageBox.Show(liste.Sum().ToString());
            MessageBox.Show(liste.Min().ToString());
            MessageBox.Show(liste.Max().ToString());
            MessageBox.Show(liste.Count().ToString());
            MessageBox.Show(liste.Average().ToString());