Это отлично работает:
<ItemsControl ItemsSource="{Binding Persons}">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<StackPanel Orientation="Vertical" />
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<TextBlock Text="{Binding Path=FirstName}"/>
<TextBlock Text="{Binding Path=LastName}"/>
</StackPanel>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
Но я хочу использовать пользовательский элемент управления вместо панели стека с двумя текстовыми блоками, используя что-то вроде:
<DataTemplate>
<jasControls:NameView/>
</DataTemplate>
Но с этим и миллионом других синтаксисов NameView ничего не показывает, но отлично работает в отдельном тесте, вне ItemsControl, с явно установленным свойством (зависимостью), например
<jasControls:NameView FName="{Binding Path=Person.FirstName}" />
Я почти не могу найти где-либо примеры этого, и мне нужно знать, как указать свойства пользовательского элемента управления - или как пользовательский элемент управления может «получить» отдельный тип элемента (Человек)? Какой синтаксис использовать? Мне нужно указать тип данных? Является ли ItemsControl причиной проблемы или должен возникать какой-либо аналогичный элемент управления, например ListBox? Могу ли я спроектировать его так, чтобы пользовательский элемент управления получал весь объект Person? Какие свойства зависимостей мне нужны в пользовательском элементе управления? Короче, как получить данные в пользовательский контроль ?! Фактические задействованные бизнес-типы будут немного сложнее, включая некоторую логику в пользовательском элементе управления, поэтому я хочу использовать пользовательский элемент управления.
ЛЮБЫЕ указания по этому поводу будут с благодарностью приняты - TIA