2010-03-20 18 views

Respuesta

13

No puede hacerlo directamente en XAML (aunque puede hacerlo en código, exactamente de la misma manera que en Windows Forms). Lo que puede hacer en su lugar es usar el enlace de datos y ItemsControl para crear los botones por usted. Usted no dice lo que necesita la matriz de control para, pero supongamos que desea un botón para cada persona en una colección:

// 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> 

En realidad se puede configurar todo el asunto en XAML utilizando el ObjectDataProvider y CollectionViewSource, pero esto debería ser suficiente para comenzar. Y, obviamente, la fuente puede ser algo más que datos comerciales, dependiendo de para qué necesite la "matriz".

+0

Gracias; esto es muy claro Intenté editar tu publicación para cambiar a pero SO no me lo permitió. Solo un pequeño error tipográfico. –

+0

Adam: gracias, arreglado. – itowlson

Cuestiones relacionadas