In this blog we will know how to sort data in datagrid.
Program
Default.aspx code
<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="_Default" %>
<!DOCTYPE html
PUBLIC "-//W3C//DTD
XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Sort data in datagrid</title>
</head>
<body>
<form
id="form1"
runat="server">
<div>
<asp:DataGrid id="DataGrid1"
BackColor="#FF9999"
OnSortCommand="DataGrid1_SortCommand"
AllowSorting="True"
AutoGenerateColumns="false"
runat="server"
Width="328px">
<HeaderStyle BackColor="#FFCC99"
/>
<Columns>
<asp:BoundColumn DataField="sname"
SortExpression="sname"
HeaderText="Name"></asp:BoundColumn>
<asp:BoundColumn DataField="saddress"
SortExpression="saddress"
HeaderText="Address"></asp:BoundColumn>
</Columns>
</asp:DataGrid>
</div>
</form>
</body>
</html>
Default.aspx.vb
code
Imports System.Data.SqlClient
Imports System.Data
Partial Class
_Default
Inherits System.Web.UI.Page
Dim strConnString As String =
System.Configuration.ConfigurationManager.ConnectionStrings.Item("ConnectionString").ToString()
Dim con As New SqlConnection(strConnString)
Dim sqlda As SqlDataAdapter
Dim com As SqlCommand
Dim ds As
DataSet
Dim str As String
Protected Sub Page_Load(ByVal
sender As Object,
ByVal e As
System.EventArgs) Handles Me.Load
If Not
IsPostBack Then
bindgrid("sname")
End If
End Sub
Sub bindgrid(ByVal s As String)
Try
con.Open()
str = "select * from
student order by " & s
com = New
SqlCommand(str, con)
Dim reader As SqlDataReader = com.ExecuteReader
DataGrid1.DataSource = reader
DataGrid1.DataBind()
con.Close()
Catch ex As Exception
MsgBox(ex.Message)
End Try
End Sub
Protected Sub DataGrid1_SortCommand(ByVal
source As Object,
ByVal e As
System.Web.UI.WebControls.DataGridSortCommandEventArgs) Handles DataGrid1.SortCommand
bindgrid(e.SortExpression)
End Sub
End Class

Comments
Join the conversation! Your thoughts help the community grow.