Да, это можно сделать, привязав свойство, которое вы обновляете с желаемым значением. Я бы посоветовал вам взглянуть на шаблон MVVM (Model-View-ViewModel), который действительно полезен для структурирования этого хорошо работающего с WPF. Проверьте это видео для хорошего обзора:
MVVM видео
Используя MMVM, вы создадите класс, который будет классом ViewModel. Этот тип обычно устанавливается в DataContext представления. Сделав это, вы можете добавить динамические ссылки на другие свойства класса, например, привязка вашего текстового поля к какому-либо свойству, содержащему идентификатор ComplexObject. Если бы у вашего класса ViewModel было свойство ComplexObject, которое снова имело идентификатор свойства, вы бы просто связали его с объектом следующим образом:
<TextBlock Text="{Binding ComplexObject.ID}" />
Имея это, вы можете инициировать создание вашего ComplexObject с помощью щелчка мыши, который в идеале вы должны установить в качестве привязки команды. Также обратите внимание, что класс ViewModel (или тот, кто держит ComplexObject, должен уведомить View, когда объект был установлен. Это можно сделать, сделав ComplexObject DependencyProperty или сделав класс, содержащий свойство, реализующим интерфейс INotifyPropertyChanged, что дает это функция PropertyChanged для запуска измененного события. Я предпочитаю последнее.