Как создать массив кнопок в WPF?
Я могу создать массив кнопок в Windows Form, но как это сделать в WPF (xaml) ? заранее спасибо!
2 ответов
вы не можете сделать это непосредственно в XAML (хотя вы можете сделать это в коде, точно так же, как в Windows Forms). Вместо этого вы можете использовать привязку данных и ItemsControl для создания кнопок. Вы не говорите, для чего вам нужен массив управления, но предположим, что вам нужна кнопка для каждого человека в коллекции:
// Code behind
public Window1()
{
var people = new ObservableCollection<Person>();
// Populate people
DataContext = people;
}
// XAML
<ItemsControl ItemsSource="{Binding}" BorderThickness="0">
<ItemsControl.ItemTemplate>
<DataTemplate>
<Button Content="{Binding Name}"
Click="PersonButton_Click"
Margin="4"
/>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
вы можете фактически настроить все это в XAML, используя ObjectDataProvider и CollectionViewSource, но этого должно быть достаточно, чтобы вы начатый. И, очевидно, источником может быть что-то другое, чем бизнес-данные, в зависимости от того, для чего вам нужен "массив".