我有 WrapPanel,我希望它内部的控件水平居中,但是当我有一个列表框或 ItemsControl 时,这些元素只会向下。
<toolkit:WrapPanel>
<ItemsControl x:Name="AnswerListBox" ItemsSource="{Binding Answers}" ScrollViewer.VerticalScrollBarVisibility="Disabled" >
<ItemsControl.ItemTemplate>
<DataTemplate>
<!-- those don't wrap horizontally and go downwards -->
<local:spriteToggleButton Text="{Binding text}" Selected="{Binding selected}" Sprites="{Binding Path=DataContext.UISprites, ElementName=questionField}" IsChecked="{Binding selected, Mode=TwoWay}" GroupName="{Binding Path=DataContext.QuestionTitle, ElementName=questionField}" ClickMode="Press" />
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
</toolkit:WrapPanel>
我遇到了一些类似的问题并发现了有关 ItemsPanel 的信息,因此我尝试了该方法,但它仅包装到 Content 并且没有在其中显示控件的其余部分。
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<toolkit:WrapPanel />
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
我认为 ItemsPanel 告诉 ItemsControl 用哪个控件包装它,但它似乎忽略了我的数据模板的其余部分。