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
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; } } }