Кажется, что требуется некоторое время, чтобы табличка данных была установлена во вновь созданный элемент. Это похоже на Как я могу получить DataTemplate (и определенные объекты) элемента в ItemsControl? но это тоже не дает удовлетворительного ответа.
var newIndex = this.Items.Add(new object()); // new "data"
var newContainer = (ContentPresenter) this.ItemContainerGenerator.ContainerFromIndex(newIndex);
var uiElem = newContainer.FindName("txt");
Вызов findname вернет null, поэтому VisualTreeHelper.GetChildrenCount = 0. Если я дам ему некоторое время, шаблон будет привязан и все будет хорошо, но это недетерминировано. Кто-нибудь знает о событии или способе принудительного связывания шаблона немедленно?
Спасибо