имеется вот такая таблица Datagrid
Ячейки на данный момент окрашиваются конвертером
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
var x = value;
if (x.ToString().Contains("ночь"))
{
return System.Windows.Media.Brushes.LightBlue;
}
else if (x.ToString().Contains("день"))
{
return System.Windows.Media.Brushes.LightYellow;
}
else
{
return value;
}
}
и конвертер привязан к таблице стандартно вот так :
<Style TargetType="DataGridCell">
<Setter Property="Background" Value="{Binding Content.Text,RelativeSource={RelativeSource Self}, Converter={StaticResource IsPivotalEntryToColorConverter}, Mode=OneWay}"/>
<Setter Property="Foreground" Value="Black"/>
</Style>
Данные для формирования итоговой таблицы собираю в сводную таблицу а потом в DataTable привязываю их вот так
DataView buf = newDt.DefaultView;
Schedule_table.ItemsSource = buf;
Собственно вопрос: Как я могу избавиться от слов "день" и "ночь" ,не потеряв при этом окраску фона ячеек?
Я перепробовал кучу вариантов и даже записывал в DataTable не строки а объекты содержащие номер и время суток но тогда GridView выводит в ячейки не номер а название объекта в духе "PivotTable.CWrapper"
UPD.
<DataTemplate>
<Grid Background="{Binding DataContext,Converter={StaticResource IsPivotalEntryToColorConverter}}">
</Grid>
</DataTemplate>
переделал как советовали в комментариях,результат выше. при этом DataTable Заполнен вот такими объектами
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Как не хардкодить учетные записи? Какие есть варианты решения данной проблемы?
Есть игра "Найди элементы на картинке" есть две разных картинки,где нужно искать элементы
Работаю с Excel на c#Задаю имена столбцов, вывожу данные
есть textbox в него вводится имя нужно сделать несколько условий :