40 lines
1.3 KiB
C#
40 lines
1.3 KiB
C#
|
using System;
|
|||
|
using System.Globalization;
|
|||
|
using System.Linq;
|
|||
|
using System.Windows;
|
|||
|
using System.Windows.Controls.Primitives;
|
|||
|
using System.Windows.Data;
|
|||
|
using ExtendedGrid.ExtendedGridControl;
|
|||
|
|
|||
|
namespace ExtendedGrid.Converter
|
|||
|
{
|
|||
|
internal class GroupByButtonVisibilityConverter:IMultiValueConverter
|
|||
|
{
|
|||
|
public object Convert(object[] values, Type targetType, object parameter, CultureInfo culture)
|
|||
|
{
|
|||
|
var dataGridColumnHeader = values[0] as DataGridColumnHeader;
|
|||
|
var grid = values[2] as ExtendedDataGrid;
|
|||
|
if (dataGridColumnHeader != null && dataGridColumnHeader.Column != null)
|
|||
|
{
|
|||
|
|
|||
|
if (grid != null)
|
|||
|
{
|
|||
|
if (grid.GroupByControlVisibility == Visibility.Visible)
|
|||
|
{
|
|||
|
if (!grid.GroupByCollection.Any(x => x.SortMemberPath == dataGridColumnHeader.Column.SortMemberPath))
|
|||
|
{
|
|||
|
return Visibility.Visible;
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
return Visibility.Collapsed;
|
|||
|
}
|
|||
|
|
|||
|
public object[] ConvertBack(object value, Type[] targetTypes, object parameter, CultureInfo culture)
|
|||
|
{
|
|||
|
throw new NotImplementedException();
|
|||
|
}
|
|||
|
}
|
|||
|
}
|