Мне нужно установить цвет фона для DataGridColumn, где цвет фона каждой ячейки может отличаться в зависимости от исходного значения Items.
Мне нужно привязать свойство Color из DataItem в цвет фона для ячеек столбца «Процент», где свойство Color содержит шестнадцатеричное значение и должно быть преобразовано, но пока мне не удалось найти решение.
Я пробовал подойти к этому с:
column.CellStyle = new Style
{
Setters = { new Setter { Property = BackgroundProperty, Value = new Binding("Color") } }
};
но мне нужно каким-то образом преобразовать значение HEX, и я понятия не имею, как это сделать. Не буду врать, я обратился за помощью к ИИ, но он, похоже, не понимает мою проблему.
Вот мой класс DataItem:
public class DataItem
{
public string Name {get; set;}
public string Percentage {get; set;}
public string Color {get; set;}
}
Затем я загружаю элементы в качестве источника для DataGrid:
private void LoadDataGridElements(List items)
{
grid.ItemsSource = null;
grid.Items.Clear();
grid.Columns.Clear();
grid.ItemsSource = items;
DataGridTextColumn column = null;
NewColumn (grid, "Name", true, "Name");
column = NewColumn (grid, "Percentage", false, "Percentage");
}
и, наконец, вот определение метода NewColumn:
private DataGridTextColumn NewColumn(DataGrid grid, string header, bool autoWidth, string bindingPath)
{
DataGridTextColumn dgtc = new DataGridTextColumn { Header = header, Width = new DataGridLength(1, autoWidth ? DataGridLengthUnitType.Auto : DataGridLengthUnitType.Star), Binding = new Binding(bindingPath) };
grid.Columns.Add(dgtc);
return dgtc;
}
Подробнее здесь: https://stackoverflow.com/questions/793 ... mns-in-wpf
Установить цвет фона в динамически созданные столбцы DataGrid в WPF ⇐ C#
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение