В МОФ есть WrapPanel, который привязан к списку классовМОФ WrapPanel привязки к списку
<ScrollViewer Grid.Column="1">
<ItemsControl ItemsSource="{Binding UserEntryItems}">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<WrapPanel/>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate>
<DataTemplate>
<local:ItemTextEntry/>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
</ScrollViewer>
Для каждого элемента в списке, я хочу, чтобы отобразить UserControl.
Пользовательское управление требует знать информацию о отдельном классе, но я не уверен, как связать это.
Так что мой MainView xmal теперь выглядит следующим
<ItemsControl ItemsSource="{Binding UserEntryItems}">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<WrapPanel/>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate>
<DataTemplate>
<local:ItemTextEntry LocalUserEntry ="{Binding}"/>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
Мои UserControl "ItemTextEntry" выглядит следующим образом
public partial class ItemTextEntry : UserControl
{
public UserEntry LocalUserEntry
{
get { return (UserEntry)GetValue(LocalUserEntryProperty); }
set { SetValue(LocalUserEntryProperty, value); }
}
public static readonly DependencyProperty LocalUserEntryProperty= DependencyProperty.Register("LocalUserEntry", typeof(UserEntry),
typeof(ItemTextEntry), new FrameworkPropertyMetadata(new UserEntry()));
public ItemTextEntry()
{
InitializeComponent();
}
}
если я поставить точку останова в "общественном ItemTextEntry()" LocalUserEntry dosnt представляют значения в основном списке
С благодарностью
Что такое 'UserEntryItems' здесь – Gopichandar
его имя списка –
У вас уже есть пользовательский элемент управления * local: ItemTextEntry *. Что вам нужно? – bit