Jan 12, 2014, 5:33 AM
[CLOSED] order by all data , not just order the data on the current page
the default order in gridpanel is just order by current page, how to order by all data?
below is my code.
below is my code.
<Store>
<ext:Store runat="server" ID="s_domain" PageSize="10" RemoteSort="True" OnReadData="LoadAllDomain" >
<Model>
<ext:Model ID="Model1" runat="server" IDProperty="suffix" Name="m_domain">
<Fields>
<ext:ModelField Name="suffix"></ext:ModelField>
<ext:ModelField Name="reg_price"></ext:ModelField>
<ext:ModelField Name="renew_price"></ext:ModelField>
<ext:ModelField Name="transfer_price"></ext:ModelField>
</Fields>
</ext:Model>
</Model>
<Proxy>
<ext:PageProxy></ext:PageProxy>
</Proxy>
</ext:Store>
</Store>
set remotesort for server sorting.public void LoadAllDomain(object sender, StoreReadDataEventArgs e)
{
DataSorter[] sorters = e.Sort;
int start = e.Start;
int limit = e.Limit;
int total;
string prop = string.Empty;
string direct = string.Empty;
var l = new List<QizDomain>();
if (sorters.Length > 0)// if user click the the clolumn,pass prop and direct to the server
{
DataSorter dataSorter = sorters[0];
prop = dataSorter.Property;
direct = dataSorter.Direction == Ext.Net.SortDirection.ASC ? "asc" : "desc";
l = _domainService.AllDomains(start, limit, out total, prop, direct);
}
else //if not click the column , no not sort
{
l = _domainService.AllDomains(start, limit, out total);
}
e.Total = total;
s_domain.DataSource = l;
s_domain.DataBind();
}
public List<QizDomain> AllDomains(int start, int limit, out int total)
{
total = _ent.QizDomains.Count();
var dd = _ent.QizDomains.OrderBy(v => v.suffix).Skip(start).Take(limit).ToList();
return dd;
}
public List<QizDomain> AllDomains(int start, int limit, out int total, string prop, string direct)
{
total = _ent.QizDomains.Count();
var dd = _ent.QizDomains.OrderBy(v => v."prop direct").Skip(start).Take(limit).ToList();// here how to order a dynamic column ?
return dd;
}
i encounter a difficulty do this , could you please help me?
Last edited by Daniil; Jan 13, 2014 at 2:53 PM.
Reason: [CLOSED]