25 Haziran 2012 Pazartesi

DevExpress XtraGrid - Master/Detail


private DataTable dtMusteri()
{
    DataTable dt = new DataTable();

    dt.Columns.Add("MusteriID", typeof(int));
    dt.Columns.Add("Musteri", typeof(string));

    DataRow dr = dt.NewRow();
    dr[0] = 1; dr[1] = "Ahmet Taş";
    dt.Rows.Add(dr);

    dr = dt.NewRow();
    dr[0] = 2; dr[1] = "Mehmet Kaş";
    dt.Rows.Add(dr);

    dr = dt.NewRow();
    dr[0] = 3; dr[1] = "Veli Yaş";
    dt.Rows.Add(dr);


    return dt;
}

private DataTable dtUrun()
{
    DataTable dt = new DataTable();

    dt.Columns.Add("MusteriID", typeof(int));
    dt.Columns.Add("Urun", typeof(string));

    DataRow dr = dt.NewRow();
    //Ahmet Taş için Ürünler
    dr[0] = 1; dr[1] = "Bilgisayar";
    dt.Rows.Add(dr);  
  
    dr = dt.NewRow();
    dr[0] = 1; dr[1] = "TV";
    dt.Rows.Add(dr);

    dr = dt.NewRow();
    dr[0] = 1; dr[1] = "Mouse";
    dt.Rows.Add(dr);

    //Mehmet Kaş için Ürünler
    dr = dt.NewRow();
    dr[0] = 2; dr[1] = "Kalem";
    dt.Rows.Add(dr);

    dr = dt.NewRow();
    dr[0] = 2; dr[1] = "Kağıt";
    dt.Rows.Add(dr);

    //Veli Yaş için Ürünler
    dr = dt.NewRow();
    dr[0] = 3; dr[1] = "Çay";
    dt.Rows.Add(dr);

    dr = dt.NewRow();
    dr[0] = 3; dr[1] = "Şeker";
    dt.Rows.Add(dr);

    dr = dt.NewRow();
    dr[0] = 3; dr[1] = "Un";
    dt.Rows.Add(dr);

    dr = dt.NewRow();
    dr[0] = 3; dr[1] = "Tuz";
    dt.Rows.Add(dr);


    return dt;
}

private void Form1_Load(object sender, EventArgs e)
{
    DataSet ds = new DataSet();
    ds.Tables.Add(dtMusteri());
    ds.Tables.Add(dtUrun());
    

    ds.Relations.Add("Detay", ds.Tables[0].Columns["MusteriID"], ds.Tables[1].Columns["MusteriID"]);

    gridControl1.DataSource = ds.Tables[0];

}


Kod İle Oluşturulan Nesne Olayı

private void Form1_Load(object sender, EventArgs e)
{

    for (int i = 0; i < 8; i++)
    {
        for (int j = 0; j < 8; j++)
        {
            Button btn = new Button();
            btn.Name = "Button" + ((j * 8 + i) + 1).ToString();
            btn.Text = ((j * 8 + i) + 1).ToString();
            btn.Parent = this;
            btn.Size = new Size(50, 50);
            btn.Location = new Point(i * btn.Width + 5, j * btn.Height + 5);

            btn.Click += new EventHandler(btn_Click);
        }
    }
}

void btn_Click(object sender, EventArgs e)
{
    Button btn = sender as Button;  //Tıklanan Butonu alıyoruz
    MessageBox.Show("Tıklanan Buton : " + btn.Text);
}