2014-10-17 36 views
0

我有一个网格,其中包含4列'Id''Name''Address''Age' 我得到列表中的所有Id并绑定到网格。现在在Grid_itemDataBound事件取决于Id我得到的名称,地址年龄为特定的行。 现在我想根据名称对网格进行排序。 如何我可以根据其绑定到网格项数据绑定 请不要要紧在网格中加载所有数据后对网格进行排序

我的代码

grdEmployee.DataSource = lstEmployee.OrderBy(x => x.Id).ToList(); 

protected void grdEmployee_ItemDataBound(object sender, EventArgs e) 
{ 
    Label lblname = (Label)e.Row.FindControl("lblName"); 
    Label lblAge = (Label)e.Row.FindControl("lblAge"); 
    Label lblId = (Label)e.Row.FindControl("lblId"); 

    lblName.Text = GetName(lblId.Text); 
    lblAge.Text = GetAge(lblId.Text); 
} 

注名按:这是示例代码中我已经手工编写在此编辑器。请忽略代码中的错误,并请理解我的方案。

+0

是否有一些特殊原因需要获取数据 - 首先是ID,然后是名称,年龄和地址? – 26071986 2014-10-17 14:56:32

回答

0

我想,如果你一次获得所有数据,然后在每次调用ItemDataBound的过程中做得更好,会更好。通过这种方式,而不仅仅是一个ID列表,您将拥有一个DataTable或一个Employees列表。然后,您可以按照您喜欢的方式对此DataTable进行排序 - 使用DefaultView.Sort(用于DataTable)或LINQ OrderBy。

相关问题