Задавая этот вопрос, имейте в виду, что существует два разных типа таблиц данных WPF.Тот, который выпущен на CodePlex в WPFToolkit, который использует .NET Framework 3.5 SP1.А более новый WPF DataGrid выпущен как встроенный элемент управления в WP4, который использует .NET Framework 4.0.
Ваше решение может отличаться в зависимости от того, какую сетку данных вы решите использовать, и возможно, вы найдете один работающий лучше, чем другой.
При этом я нашел статью на C # Corner , который описывает, как отображать комбинированный список в ячейке, когда ячейка находится в режиме редактирования.Это может помочь вам.Если вы начнете здесь, вы можете обнаружить, что можете расширить этот пример кода в соответствии со своими потребностями.И в тех случаях, когда вам нужно использовать текстовое поле вместо поля со списком при редактировании, вы, вероятно, могли бы установить поле со списком, чтобы разрешить ввод новых значений, по существу, позволяя пользователю вводить значения в текстовое поле, когда нужный элемент недоступен.Не уверен, что это то, что вы хотите, но я по крайней мере хотел дать вам кое-что, чтобы пережевать.
Удачи,