You could use a
.Datasource
for your grid and use an SQL query with
DISTINCT
, example:
string customers = "SELECT DISTINCT * FROM Customers";
using (SqlConnection con = new SqlConnection("Data Source=MY-PC;Initial Catalog=northwind;Integrated Security=True"))
{
DataSet ds = new DataSet();
SqlDataAdapter da = new SqlDataAdapter(customers, con);
da.Fill(ds, "Customers");
dataGridView.AutoGenerateColumns = true;
dataGridView.DataSource = ds;
dataGridView.DataMember = "Customers";
}
It is also possible to set a
filter on a
DataSet
(does not have to be a database query).
In VB.NET:
Imports System
Imports System.Xml
Imports System.Data
Imports System.Data.SqlClient
Public Class Program
Public Shared Sub Main()
Dim customers As String = "SELECT DISTINCT * FROM Customers"
Using con As SqlConnection = New SqlConnection("Data Source=MY-PC;Initial Catalog=northwind;Integrated Security=True")
Dim ds As DataSet = New DataSet()
Dim da As SqlDataAdapter = New SqlDataAdapter(customers, con)
da.Fill(ds, "Customers")
dataGridView.AutoGenerateColumns = true
dataGridView.DataSource = ds
dataGridView.DataMember = "Customers"
End Using
End Sub
End Class