0

我有一个数据网格,它从目录中读取所有歌曲并生成行。我写了数据网格排序,它在 ASC 或 DESC 上按歌曲名称排序,调用排序的唯一方法是按下标题中的链接。但是我想从 asp:button 调用排序命令,我该怎么办?

4

4 回答 4

1

您好,您可以尝试使用调用委托的代码

void SortGrid(Object sender, DataGridSortCommandEventArgs e) 
{
}

void Btn_Click(Object sender,EventArgs e)
{
        SortGrid(YourDataGrid, new DataGridSortCommandEventArgs{SortExpression = value, CommandSource = value});
    //You pass yours values
}
于 2012-08-25T19:18:26.730 回答
0

看看这个这个

该策略是将当前类型的网格保存在您可以检索的位置。然后,当单击按钮时,您希望根据您需要的任何逻辑修改该排序表达式,并将该排序表达式发送回网格以对其进行排序(第二个链接)。

希望有帮助。

于 2012-08-25T19:10:51.767 回答
0

在 asp.net 命令按钮的单击事件中,您可以使用 DataView 进行排序

例如:

DataView myDataView = new DataView(mybll.GetItemsOrdered()); 
myDataView.Sort = sortExpression + " DESC"; 
GridView.DataSource = myDataView; 
GridView.DataBind();
于 2012-08-25T19:16:47.353 回答
0

必须解决我的问题的代码:

protected void SortBySizeButton_Click(object sender, EventArgs e)
{
    DataView myDataView = new DataView(GetFiles()); //GetFiles is protected DataTable that populates my DataGrid :)
    myDataView.Sort = "size " + " DESC"; // size is the SortExpression
    dgFile.DataSource = myDataView;
    dgFile.DataBind();
}

就这样!:)

于 2012-08-25T20:28:31.550 回答