Возможно, вы немного ошибочно подходите к этому, трудно сказать из вопроса:
Обычно, чтобы показать динамический набор элементов пользовательского интерфейса в MVVM, вы связываете свойство ItemsSource ItemsControl с ObservableCollection.Свойство ItemsControl ItemsTemplate преобразует объект YourViewModel в UIElement, который может быть TextBlock или любым другим стилем, который вы хотите.
В качестве примера:
// model
class Person
{
public string Name {get; private set;}
}
// view model
class MainViewModel
{
public ObservableCollection<Person> People {get; private set;}
}
//view
<UserControl DataContext="{Binding MyMainViewModelObject}">
<ItemsControl ItemsSource="{Binding People}">
<ItemsControl.ItemsTemplate>
<DataTemplate>
<TextBlock Text="{Binding Name}"/>
</DataTemplate>/
</ItemsControl.ItemsTemplate>
</ItemsControl>
</UserControl>
Я не тестировал этот код, он просто для иллюстрации.Есть и другие способы распространения проблемы в MVVM, все зависит от ситуации.Вы должны были бы предоставить нам более подробную информацию, чтобы помочь вам с этим.Редко в WPF возникает необходимость использовать код для создания или добавления элементов пользовательского интерфейса к другим элементам UIE и т. Д.
Однако стоит отметить более точные строки вопроса, однако то, что ItemsControl может связываться с кучейобычных объектов и использовать его шаблон для создания элементов UIElements из них, ИЛИ он может связываться со списком элементов UIElement, и в этом случае шаблон не применяется (звучит так, как если бы это была ваша ситуация).