Другой метод - использовать RowStyle, который имеет привязку из вашего класса. Чтобы избежать необходимости использовать какой-либо конвертер или даже событие, измените свой код ErrorMessage на что-то вроде этого:
public SolidColorBrush background
{
get
{
switch (this.severity)
{
case Severity.Error: return new SolidColorBrush(Colors.Red);
case Severity.Warning: return new SolidColorBrush(Colors.Yellow);
default: throw new Exception("severity out of bounds");
}
}
}
А затем добавьте этот ресурс:
<Style x:Key="xGridViewRowStyle"
TargetType="telerik:GridViewRow">
<Setter Property="Background"
Value="{Binding background}" />
</Style>
А в RadGridView:
RowStyle="{StaticResource xGridViewRowStyle}"
Немного другой подход, но только что проверил, и он определенно работает. :)