list排序写了order,却没有效果

来源:互联网 发布:克里米亚检察长知乎 编辑:程序博客网 时间:2024/04/29 16:16

原本,用了order,程序却没有进行排序

    dgrdDefinedMaterial.DataSource = RecipeDetailModel.MaterialDefinedList.OrderBy(e => e.Name).ToList();      


修改后

  RecipeDetailModel.MaterialDefinedList = RecipeDetailModel.MaterialDefinedList.OrderBy(e => e.Name).ToList();

原因:

因为用的是  dgrdDefinedMaterial.DataBindings.Add("DataSource", recipeDetailModel, "MaterialDefinedList");绑定,

那么在对象

        private List<MD_Material> materialDefinedList;
        [DataMember]
        public List<MD_Material> MaterialDefinedList
        {
            get { return materialDefinedList; }
            set
            {
                materialDefinedList = value;
                NotifyPropertyChanged("MaterialDefinedList");
            }
        }

使用dgrdDefinedMaterial.DataSource = RecipeDetailModel.MaterialDefinedList.OrderBy(e => e.Name).ToList();这个的时候,

dgrdDefinedMaterial.DataSource里面进行了排序,但是 RecipeDetailModel.MaterialDefinedList却没有,

所以要对  RecipeDetailModel.MaterialDefinedList 重新赋值排序后的结果