Refer this LINK
Listview sorting based on dropdownlist in asc or desc [
^]
<asp:dropdownlist id="ddlDirection" runat="server" xmlns:asp="#unknown">
AutoPostBack="true" onselectedindexchanged="ddlDirection_SelectedIndexChanged1">
<asp:listitem selected="True" text="Ascending">ASC</asp:listitem>
<asp:listitem text="Descending">DESC</asp:listitem>
</asp:dropdownlist>
the codebehind will be something on the following lines
protected void ddlDirection_SelectedIndexChanged1(object sender, EventArgs e)
{
string sortBy = ddlSortBy.SelectedValue;
string direction = ddlDirection.SelectedValue;
SortProducts(sortBy, direction);
}
protected void SortProducts(string sortBy, string direction)
{
string filter = sortBy + " " + direction;
DataTable newDt = new DataTable();
newDt = (DataTable)Session["ProductsDt"];
dt = newDt.Clone();
DataRow[] drArray = null;
drArray = newDt.Select("", filter);
foreach (DataRow dr in drArray)
{
dt.ImportRow(dr);
}
MyListView.DataSource = dt;
MyListView.DataBind();
}