我遇到填充ItemsControl
的问题,特别是将这些控件放在Grid
的指定位置。这是我的XAML
...
<ScrollViewer HorizontalScrollBarVisibility="Auto" VerticalScrollBarVisibility="Auto">
<ItemsControl ItemsSource="{Binding Tiles, Mode=TwoWay}" Background="White">
<!--ItemsPanelTemplate-->
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<Grid local:GridHelper.ColumnCount="{Binding ColumnCount, Mode =TwoWay}"
local:GridHelper.RowCount="{Binding RowCount, Mode =TwoWay}">
</Grid>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<!--ItemContainerStyle-->
<ItemsControl.ItemContainerStyle>
<Style>
<Setter Property="Grid.Column"
Value="{Binding ColumnIndex, Mode=TwoWay}" />
<Setter Property="Grid.Row"
Value="{Binding RowIndex, Mode=TwoWay}" />
</Style>
</ItemsControl.ItemContainerStyle>
<!--ItemTemplate-->
<ItemsControl.ItemTemplate>
<DataTemplate DataType="{x:Type views:TileWrapper}">
<views:TileWrapper/>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
</ScrollViewer>
我正在使用Rachel Lims gridhelper类根据需要生成列和行,这确实有效。我面临的问题是我的TileWrapper
类具有应该包含的列和行的属性,但在ItemsControl.ItemContainerStyle
中设置这些属性不起作用 < /强>
不确定我在这里可能缺少什么,当我运行应用程序时,似乎所有控件都进入第0列和第0行?
注意:如果我使用StackPanel
或其他控件,我的项目确实会显示,而不是Grid
。