Если я вас правильно понимаю, у вас есть ComboBox, связанный с Списком пользовательских экземпляров. Класс User имеет свойство типа Employee, а класс Employee имеет свойство FullName типа string. Viewmodel также имеет свойство типа Document, а класс Document имеет свойство UserFullName типа string. Когда вы выбираете значение (пользователь) в ComboBox, вы хотите установить значение FullName (User.Employee.FullName) для свойства UserFullName Document (Document.UserFullName).
Правильно?
Если это единственное, что вы хотите сделать, возможно, самым простым решением было бы не связывать ComboBox с набором пользовательских экземпляров, а с набором строк, который является FullName этих пользователей (из Employee). Эту коллекцию не составит труда создать, просто просматривая список пользователей. Если вы связываете ComboBox с набором строк, то вы можете просто привязать SelectedValue ComboBox непосредственно к UserFullName документа (Document.UserFullName).
Другим решением было бы иметь свойство SelectedUser типа User в вашей модели представления и привязать SelectedValue ComboBox к этому. Всякий раз, когда значение этого изменения вы также устанавливаете значение Document.UserFullName, например:
private User _selectedUser;
public User SelectedUser
{
get
{
_return _selectedUser;
}
set
{
if (value != _selectedUser)
{
_selectedUser = value;
Document.UserFullName = _selectedUser.Employee.FullName;
OnPropertyChanged("SelectedUser");
}
}
}