DataTable Satırların Sıralanma Şeklini Değiştirme

c sharp datatable sıralanma

DataTable içerisindeki satırların sıralanma şeklini değiştirme

Aşağıdaki örnekteki gibi uygulama yaparak datatable içerisindeki satırların sıralanma şeklini değiştirebilirsiniz…


public DataTable dtDuzenle(DataTable dt, String sutunIsmi)
{
DataView dv = dt.DefaultView;
dv.Sort = sutunIsmi;
DataTable siralanmisDt = dv.ToTable();
return siralanmisDt;
}

Ayrıca sütun ismini yazarken bir boşluk bırakıp ASC yada DESC derseniz sıralama şeklini değiştirebilirsiniz


dataGridView1.DataSource = dtDuzenle(dt, "col2 desc");

ile datatable içerisindeki rowların sıralanma şeklini değiştirebilirsiniz

dt2

Denemek için form içerisine DataGridView ekleyip aşağıdaki kodları kullanın


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;

namespace WindowsFormsApplication4
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

private void Form1_Load(object sender, EventArgs e)
{
DataTable dt = new DataTable();

dt.Columns.Add("col1");
dt.Columns.Add("col2");

DataRow row1 = dt.NewRow();
row1["col1"] = "row1";
row1["col2"] = "1";

DataRow row2 = dt.NewRow();
row2["col1"] = "row2";
row2["col2"] = "2";

DataRow row3 = dt.NewRow();
row3["col1"] = "row3";
row3["col2"] = "3";

dt.Rows.Add(row1);
dt.Rows.Add(row3);
dt.Rows.Add(row2);

//dataGridView1.DataSource = dt;
dataGridView1.DataSource = dtDuzenle(dt, "col2");

}

public DataTable dtDuzenle(DataTable dt, String sutunIsmi)
{
DataView dv = dt.DefaultView;
dv.Sort = sutunIsmi;
DataTable siralanmisDt = dv.ToTable();
return siralanmisDt;
}

}
}

dt

Bir cevap yazın

E-posta hesabınız yayımlanmayacak.