我想在它们旁边制作一些带有文本的矩形。然后是当您通过群组查看联系人时的人员中心。
我想知道虽然我需要根据每个项目制作 X 个矩形,但我不知道如何让它重复。
我能想到的唯一方法是使用列表,然后尝试获取包含文本的矩形。
我不确定我是否可以像重复堆栈面板或重复网格一样。
我想在它们旁边制作一些带有文本的矩形。然后是当您通过群组查看联系人时的人员中心。
我想知道虽然我需要根据每个项目制作 X 个矩形,但我不知道如何让它重复。
我能想到的唯一方法是使用列表,然后尝试获取包含文本的矩形。
我不确定我是否可以像重复堆栈面板或重复网格一样。
这真的取决于你想做什么。
如果您有固定数量的项目,并且您知道它们在设计时应该是什么样子
那么您可以简单地ListBoxItem
在 XAML 中添加一个:
<ListBox>
<ListBox.Items>
<ListBoxItem>
<Border Background="Green" Width="70" Height="70">
<Grid>
<Rectangle Width="50" Height="50"
Fill="Red" Margin="10" />
<TextBlock Text="1" HorizontalAlignment="Center"
VerticalAlignment="Center" />
</Grid>
</Border>
</ListBoxItem>
<ListBoxItem>
<Border Background="Blue" Width="70" Height="70">
<Grid>
<Rectangle Width="50" Height="50"
Fill="Yellow" Margin="10" />
<TextBlock Text="2" HorizontalAlignment="Center"
VerticalAlignment="Center" />
</Grid>
</Border>
</ListBoxItem>
</ListBox.Items>
</ListBox>
如果您事先不知道有多少项,并且希望它们都具有相同的外观
那么是的,绑定是唯一的方法
根据数据绑定项的 ui 复杂性,您可能希望将该 ui 逻辑包装在单独的(用户)控件中,并将其用作项的 DataTemplate:
<ListBox ItemsSource={Binding TheItemsToBind}>
<ListBox.ItemTemplate>
<DateTemplate>
<mycontrols:MySpecializedControl
[...whatever it takes to bind to the data item...]/>
</DateTemplate>
</ListBox.ItemTemplate>
</ListBox>