Установить цвет фона в динамически созданные столбцы DataGrid в WPFC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Установить цвет фона в динамически созданные столбцы DataGrid в WPF

Сообщение Anonymous »

Мне нужно установить цвет фона для 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
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»