ListBox中的按钮

时间:2013-09-05 11:32:47

标签: silverlight windows-phone-7

我在我的项目中做了一个列表,每个项目需要一个按钮。

如何在ListBox中获取这些按钮,例如我的Windows手机的“最后通话”页面?

感谢。

4 个答案:

答案 0 :(得分:2)

FunksMaName答案非常正确,除了小改变.....

<ListBox Height="360"
          HorizontalAlignment="Left"
          Margin="22,23,0,0"
          Name="UserDetailsListBox"
          VerticalAlignment="Top"
          Width="413">  <ListBox.ItemTemplate>
        <DataTemplate>
            <StackPanel Orientation="Horizontal">
                 <Button.Template>
                        <ControlTemplate>
                          <Image Source="/Assets/Images/MyImage.png" />
                        </ControlTemplate>
                    </Button.Template>
               <TextBlock x:Name="txtOverViewHeader1"
                          Text="OverView"
                          Foreground="Yellow"
                          Width="600"
                          FontSize="28"
                          Margin="10,0,0,0"
                          Height="65">
                </TextBlock>
             </StackPanel>
        </DataTemplate></ListBox.ItemTemplate></ListBox>

我只是将图片移到按钮的模板内而不是内容......这样更准确..

答案 1 :(得分:1)

我们可以像这样为列表框的每个项目添加按钮。

<ListBox Height="360"
                  HorizontalAlignment="Left"
                  Margin="22,23,0,0"
                  Name="UserDetailsListBox"
                  VerticalAlignment="Top"
                  Width="413">
 <ListBox.ItemTemplate>
                <DataTemplate>
                   <StackPanel Orientation="Vertical"
                               >
    <StackPanel Orientation="Horizontal">
                        <Button Width="150" Height="50" x:Name="Btn1" Content="Button1"                                 Margin="0,-20,0,0"/>
                       <TextBlock x:Name="txtOverViewHeader1"
                                  Text="OverView"
                                  Foreground="Yellow"
                                  Width="600"
                                  FontSize="28"
                                  Margin="10,0,0,0"
                                  Height="65">
                        </TextBlock>
                     </StackPanel>

             <StackPanel Orientation="Horizontal">
                        <Button Width="150" Height="50" x:Name="Btn2" Content="Button2"                                 Margin="0,-20,0,0"/>
                       <TextBlock x:Name="txtOverViewHeader2"
                                  Text="OverView"
                                  Foreground="Yellow"
                                  Width="600"
                                  FontSize="28"
                                  Margin="10,0,0,0"
                                  Height="65">
                        </TextBlock>
                     </StackPanel>

                </StackPanel>
                        </DataTemplate>
                    </ListBox.ItemTemplate>

                </ListBox>

希望它会给你想要的答案

答案 2 :(得分:0)

使用圆形图像,设置Tap事件,或者如果需要按钮特定行为,则将图像包裹在Button模板周围

<ListBox Height="360"
              HorizontalAlignment="Left"
              Margin="22,23,0,0"
              Name="UserDetailsListBox"
              VerticalAlignment="Top"
              Width="413"> 
 <ListBox.ItemTemplate>
            <DataTemplate>
                <StackPanel Orientation="Horizontal">
                    <Button Template="x:Null" Tap="">
                        <Image Source="/Assets/Images/MyImage.png" />
                    </Button>
                   <TextBlock x:Name="txtOverViewHeader1"
                              Text="OverView"
                              Foreground="Yellow"
                              Width="600"
                              FontSize="28"
                              Margin="10,0,0,0"
                              Height="65">
                    </TextBlock>
                 </StackPanel>
            </DataTemplate>
</ListBox.ItemTemplate>

</ListBox>

答案 3 :(得分:0)

获取圆形按钮的最简单方法是使用Coding4Fun。它可以免费使用,安装非常简单。

您可以关注these instructions在您的应用中使用它。

对于图标,您可以搜索一些免费包,也可以查看Metro Studio 2是否有您需要的图标。该工具也可以免费使用。