Sic.Framework-Nanjing-Baishi/MECF.Framework.UI.Client/DataGridTransform/ExtendedGrid/Classes/Helpers.cs

55 lines
1.6 KiB
C#

using System.ComponentModel;
using System.Windows.Controls;
using System.Windows.Data;
namespace ExtendedGrid.Classes
{
public static class SortHelpers
{
public static string GetSortMemberPath(DataGridColumn column)
{
// find the sortmemberpath
string sortPropertyName = column.SortMemberPath;
if (string.IsNullOrEmpty(sortPropertyName))
{
var boundColumn = column as DataGridBoundColumn;
if (boundColumn != null)
{
var binding = boundColumn.Binding as Binding;
if (binding != null)
{
if (!string.IsNullOrEmpty(binding.XPath))
{
sortPropertyName = binding.XPath;
}
else if (binding.Path != null)
{
sortPropertyName = binding.Path.Path;
}
}
}
}
return sortPropertyName;
}
public static int FindSortDescription(SortDescriptionCollection sortDescriptions, string sortPropertyName)
{
int index = -1;
int i = 0;
foreach (SortDescription sortDesc in sortDescriptions)
{
if (System.String.CompareOrdinal(sortDesc.PropertyName, sortPropertyName) == 0)
{
index = i;
break;
}
i++;
}
return index;
}
}
}