Рейтинг:
12
Jeevitha royapathi
Для сортировки вы должны привязать сетку...
private void LoadGrid(string sortExpr, string sortDirection)
{
DataSet ds = new DataSet();
SqlDataAdapter SqlDA = new SqlDataAdapter("Select * from tablename order by "+sortExpr+" "+sortDirection+"", connectionString);
SqlDA.Fill(ds);
if (ds != null)
{
gdManageForm.DataSource = ds;
gdManageForm.EditIndex = -1;
gdManageForm.DataBind();
}
}
protected void gdManageForm_Sorting(object sender, GridViewSortEventArgs e)
{
string sortExpression = e.SortExpression;
ViewState["SortExpression"] = sortExpression;
if (GridViewSortDirection == SortDirection.Ascending)
{
GridViewSortDirection = SortDirection.Descending;
SortGridView(sortExpression, DESCENDING);
}
else
{
GridViewSortDirection = SortDirection.Ascending;
SortGridView(sortExpression, ASCENDING);
}
}
private void SortGridView(string sortExpression, string direction)
{
//If it is default state
LoadGrid(sortExpression, direction);
}
private SortDirection GridViewSortDirection
{
get
{
if (ViewState["sortDirection"] == null)
ViewState["sortDirection"] = SortDirection.Ascending;
return (SortDirection)ViewState["sortDirection"];
}
set { ViewState["sortDirection"] = value; }
}
Если у вас есть какие-либо сомнения, дайте мне знать
Member 8317792
Как? - Когда?
sdasasd
как при нажатии на заголовок gridview например идентификатор пользователя данные таблицы будут отсортированы
Jeevitha royapathi
частный недействительными LoadGrid(строка sortExpr, строки направления сортировки)
{
DataSet ds = новый набор данных();
SqlDataAdapter области sqlda задано = новый SqlDataAdapter("Select * из того, имятаблицы по "+sortExpr+" "+направления сортировки+"", параметр connectionString);
SqlDA. Fill(ds);
if (ds != null)
{
gdManageForm.Источник данных = ДС;
gdManageForm.EditIndex = -1;
gdManageForm.DataBind();
}
}
охраняемых недействительными gdManageForm_Sorting(объект отправителя, GridViewSortEventArgs е)
{
пнлформ.Управления.Четкий();
divformName.Стиль.Добавить("дисплей", "никто");
лблдисперрор.Текст = "";
litFormName.Текст = "";
строка sortExpression = e. SortExpression;
ViewState ["SortExpression"] = sortExpression;
if (GridViewSortDirection == SortDirection.Восходящий)
{
GridViewSortDirection = Направления Сортировки.Нисходящий;
SortGridView(sortExpression, нисходящий);
}
еще
{
GridViewSortDirection = Направления Сортировки.Восходящий;
SortGridView(sortExpression, по возрастанию);
}
}
частный недействительными SortGridView(строка sortExpression, строки направления)
{
//Если это состояние по умолчанию
LoadGrid(sortExpression, direction);
}
частные направления сортировки GridViewSortDirection
{
получить
{
if (ViewState ["sortDirection"] = = null)
Состояние вида["направления сортировки"] = направления сортировки.Восходящий;
возвращение (направления сортировки)отображение["направления сортировки"];
}
set { ViewState ["sortDirection"] = значение; }
}
Здесь gdManageForm - это имя Герда
Member 11822399
это решение не работает при щелчке по заголовку!
Рейтинг:
0
cyber_addicted
static SortDirection GridViewSortDirection;
protected void chequegrid_Sorting(object sender, GridViewSortEventArgs e)
{
string sortExpression = e.SortExpression;
ViewState["SortExpression"] = sortExpression;
if (GridViewSortDirection == SortDirection.Ascending)
{
GridViewSortDirection = SortDirection.Descending;
SortGridView(sortExpression, "DESCENDING");
}
else
{
GridViewSortDirection = SortDirection.Ascending;
SortGridView(sortExpression, "ASCENDING");
}
}
public void SortGridView(string sortExpression, string direction)
{
if (sortExpression == "ss")
{
string s;
if(direction =="DESCENDING")
{
s = "order by dbo.registration.id desc";
}
else
{
s = "order by dbo.registration.id";
}
bindbysort(s);
}
}
public void bindbysort(string expre)
{
DataSet ds = new DataSet();
ds = ck.bindgrid(expre);
if (ds.Tables[0].Rows.Count > 0)
{
chequegrid.DataSource = ds;
Label1.Text = ds.Tables[0].Rows.Count.ToString() + " Result Found";
chequegrid.DataBind();
}
else
{
chequegrid.DataSource = null;
chequegrid.DataBind();
}
}
aspx
<asp:gridview id="chequegrid" runat="server" autogeneratecolumns="False" allowsorting="true" xmlns:asp="#unknown">
CellPadding="4" ForeColor="#333333" GridLines="None" EmptyDataText="There is no any cheque generated yet for this time duration."
CssClass="table-bordered table g" Width="100%" onsorting="chequegrid_Sorting">
<alternatingrowstyle backcolor="White" forecolor="#284775" />
<columns>
<asp:templatefield headertext="Customer Id" sortexpression="ss">
<itemtemplate>
<asp:label id="Label1" runat="server">
Text='<%# Eval("customer_reg_id") %>'></asp:label>
</itemtemplate>
</asp:templatefield>
<asp:templatefield headertext="Customer Name">
<itemtemplate>
<asp:label id="Label1" runat="server">
Text='<%# Eval("name") %>'></asp:label>
</itemtemplate>
</asp:templatefield>
<asp:templatefield headertext="Date From">
<itemtemplate>
<asp:label id="Label1" runat="server" text="<%# Convert.ToDateTime(Eval("date_from")).ToString("dd MMMM, yyyy") %>"></asp:label>
</itemtemplate>
</asp:templatefield>
<asp:templatefield headertext="Date To">
<itemtemplate>
<asp:label id="Label2" runat="server" text="<%# Convert.ToDateTime(Eval("date_to")).ToString("dd MMMM, yyyy") %>"> </asp:label>
</itemtemplate>
</asp:templatefield>
<asp:templatefield headertext="Cheque Amount">
<itemtemplate>
<asp:label id="Label3" runat="server" text="<%# Eval("income") +"/-" %>"></asp:label>
</itemtemplate>
</asp:templatefield>
<asp:templatefield headertext="Generated On">
<itemtemplate>
<asp:label id="Label4" runat="server" text="<%# Convert.ToDateTime(Eval("date_of_clear")).ToString("dd MMMM, yyyy") %>"></asp:label>
</itemtemplate>
</asp:templatefield>
</columns>
</asp:gridview>
Nelek
Вы понимаете, что этому вопросу уже 18 месяцев?
u.namasivayam
DataSet ds = новый набор данных();
ДС = СК.bindgrid(п);
Что значит СК????