1
У меня есть DataGrid, где клетки назначенных пользовательского класса, определенный ниже:WPF DataGrid привязки ячейка цвета фон свойство присвоенных данных объект
public class DataGridVariableWrapper : DependencyObject
{
public Variable TheVariable { get; set; }
public Brush BackgroundColor
{
get { return (Brush)GetValue(BackgroundColorProperty); }
set { SetValue(BackgroundColorProperty, value); }
}
public static readonly DependencyProperty BackgroundColorProperty = DependencyProperty.Register("BackgroundColor", typeof(Brush), typeof(DataGridVariableWrapper), new UIPropertyMetadata(null));
public DataGridVariableWrapper(Brush backgroundBrush, Variable theVariable)
{
this.BackgroundColor = backgroundBrush;
this.TheVariable = theVariable;
}
public override string ToString()
{
return TheVariable.Value.ToString();
}
}
Я пытаюсь иметь фон DataGridCell связанный к свойству BackgroundColor этого класса оболочки данных. Я пробовал:
<DataGrid.CellStyle>
<Style TargetType="DataGridCell">
<Setter Property="Background" Value="{Binding DataGridVariableWrapper.BackgroundColor}" />
</Style>
</DataGrid.CellStyle>
Но цвет фона остается неизменным. Я здесь что-то не так?
Вы пробовали 'Value =" {Binding BackgroundColor} "'? – LPL
Кажется, что это сработало, просто нужно выяснить немного пробела белого пробела, который появляется, а не заполнять полный фон. – user2371475
Получил это, пришлось установить толщину рамки ячейки равным 0. Если вы хотите, чтобы ваш комментарий был ответом, я помечаю его как правильно. – user2371475