Динамическое размещение объекта для многих визуальных родителей в WPF - PullRequest
0 голосов
/ 03 августа 2011

Я хочу создать свой собственный usercontrol, который будет принимать некий FrameworkElement в качестве параметра (как Content), а затем он воспроизведет его на нескольких копиях (насколько? Это зависит). В любом случае копии должны быть связаны с их виртуальной машиной. Одной копией, вероятно, будет StackPanel с несколькими связанными кнопками и текстовыми полями. Так это будет выглядеть так:

<MyControl> <Panel with stuff in it/> </MyControl>

Теперь я контролирую ItemsControl и динамически помещаю туда элементы. Но один контент (например, панель стека) может иметь только одного родителя, поэтому он не работает. Как я могу достичь этого? Я слышал, что DataTemplates могут помочь мне, но я не знаю как. Также я брожу, если я не могу сделать что-то вроде этого:

<MyControl> <ViewModel of Panel with stuff/> </MyControl>

1 Ответ

2 голосов
/ 03 августа 2011

Вам нужно взять свойство DataTemplate, содержащее FrameworkElement (s), затем создать ContentPresenter s в элементе управления, для которых Content установлено на элемент ViewModel, а ContentTemplate - Ваша DataTemplate собственность.

...