无法对datagridview进行排序

Ira*_*ili 2 c# sorting datagridview bindingsource

你好我不能按字母顺序排序我的datagridview

这就是我填充网格的方式:

 bs = new BindingSource();
                bs.DataSource = db.GetProducts.ToList();
                dgvInventory.DataSource = bs;
Run Code Online (Sandbox Code Playgroud)

这就是我尝试排序网格的方式:

     private void toolStripButton3_Click_1(object sender, EventArgs e)
    {
        bs.Sort = "ID DESC, Name ASC";
        dgvInventory.DataSource = bs;
    }
Run Code Online (Sandbox Code Playgroud)

当我按下按钮没有任何反应这两列是数据网格中的exsist

这是屏幕:

在此输入图像描述

Cod*_*lla 6

引自:http://msdn.microsoft.com/en-us/library/system.windows.forms.bindingsource.sort.aspx

为了支持排序,底层列表必须实现IBindingList或IBindingListView接口.可以通过SupportsSorting属性查询此功能.SupportsAdvancedSorting属性为true时,可以使用多列排序.

你正在调用ToList()扩展方法,它会返回一个List<Product>不支持这些接口的扩展方法,因此不能进行排序.