0

我想在它们旁边制作一些带有文本的矩形。然后是当您通过群组查看联系人时的人员中心。

我想知道虽然我需要根据每个项目制作 X 个矩形,但我不知道如何让它重复。

我能想到的唯一方法是使用列表,然后尝试获取包含文本的矩形。

我不确定我是否可以像重复堆栈面板或重复网格一样。

4

2 回答 2

0

这真的取决于你想做什么。

如果您有固定数量的项目,并且您知道它们在设计时应该是什么样子

那么您可以简单地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>
于 2013-03-15T18:03:52.650 回答
0

绑定列表本身并不知道元素在ListBox. 您需要DataTemplate为每个项目定义一个(更多细节在这里)。

现在,由于您正在讨论在 People Hub 中完成的分组,您可以使用控件(此处此处LongListSelector的教程)。

于 2013-03-15T18:31:15.930 回答