Конечно.Вы можете конвертировать все, что хотите, во что хотите.Вам просто нужно реализовать способ как конвертировать.
Однако, если количество состояний ограничено 4, я бы предложил использовать Enum вместострок, потому что это делает его более безопасным в отношении рефакторинга и т. д.
Что-то подобное должно работать:
internal enum State
{
State1, State2, State3, State4
}
// ...
public void Convert(object value, ...)
{
if (value is State)
{
State state = (State)value;
switch(state)
{
case State.State1:
return myBrush1;
case State.State2:
return myBrush2;
case State.State3:
return myBrush3;
case State.State4:
return myBrush4;
}
}
return defaultBrush;
}
Кстати: в зависимости от сценария может быть лучше использовать триггеры, но это не таквсегда возможно.