protected void SetViewFrom(BindingListSource sourceBindingList, IRowSource newRowSource, BindingListSource targetBindingList) { targetBindingList.SetView(sourceBindingList.ViewInfo, newRowSource); targetBindingList.RowFilter = sourceBindingList.RowFilter; if (sourceBindingList.SortDescriptions != null) { targetBindingList.ApplySort(sourceBindingList.SortDescriptions); } }
public void SetSortDirection(PropertyDescriptor propertyDescriptor, ListSortDirection direction) { if (null == propertyDescriptor) { return; } List <ListSortDescription> sortDescriptions = new List <ListSortDescription>(); sortDescriptions.Add(new ListSortDescription(propertyDescriptor, direction)); if (null != BindingListSource.SortDescriptions) { sortDescriptions.AddRange( BindingListSource.SortDescriptions.OfType <ListSortDescription>() .Where(sortDescription => sortDescription.PropertyDescriptor.Name != propertyDescriptor.Name)); } BindingListSource.ApplySort(new ListSortDescriptionCollection(sortDescriptions.ToArray())); }
private void clearSortToolStripMenuItem_Click(object sender, EventArgs e) { BindingListSource.ApplySort(new ListSortDescriptionCollection()); }