Нет особого смысла использовать фьючерсы WPF, такие как конвертеры связывания и т. Д., Просто для того, чтобы доказать, что они работают - они делают.Количество обращений к конвертеру будет огромным, что, по крайней мере, не элегантно, и его легко избежать.Я бы посоветовал вам предварительно обработать вашу коллекцию перед установкой сеточного элемента ItemsSource.
Я бы лично использовал проекции LINQ и устанавливал словари в качестве статических членов вашего класса.Напишите нам, и я выложу образец.
Обновление 1 - Пример кода
public class Person
{
private static Dictionary<int, string> Departments;
static Person()
{
Person.SetUpDictionaries();
}
private static void SetUpDictionaries()
{
Person.Departments = new Dictionary<int, string>(3)
{
{ 1, "IT" },
{ 1, "Finance" },
{ 1, "HR" }
};
}
public int DepartmentId
{
get;
set;
}
public string Depratment
{
get { return Person.Departments[this.DepartmentId]; }
}
}