Como adicionar dinamicamente RowDefinition ou ColumnDefinition a uma grade com ligação?
Estou tentando criar uma tabela com um número variável de linhas e colunas. Estou fazendo isso com umItemsControl
que tem umGrid
como seuItemsPanel
. E eu sei que posso definirGrid.Row
eGrid.Column
de cada item através de seuItemContainerStyle
. Mas eu não sei como mudar o número de linhas e colunas e seus tamanhos quando não consigo acessar a grade pelo nom
Como você pode modificarRowDefinitions
ouColumnDefinitions
de umGrid
em tempo de execução usando apenas XAML eobrigatóri comno code-behind?
Este é o código XAML:
<ItemsControl Name="myItemsControl" ItemsSource="{Binding Cells}">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<Grid Name="myGrid">
<Grid.RowDefinitions>
<!-- unknown number of rows are added here in run-time -->
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<!-- known number of columns are added here in run-time -->
</Grid.ColumnDefinitions>
</Grid>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemContainerStyle>
<Style.../>
</ItemsControl.ItemContainerStyle>
</ItemsControl>
Eu tentei adicionar algunsRowDefinition
no código por trás, mas não consegui encontrar uma maneira de obter acesso amyGrid
pelo nome (ou de qualquer outra forma), pois está dentro de umItemsPanelTemplate
.
Gostaria de saber se existe alguma maneira de programaticamenteadicionar ou modificarRowDefinitions
em tempo de execução?