Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Windows phone 7 拉伸堆垛板_Windows Phone 7_Xaml - Fatal编程技术网

Windows phone 7 拉伸堆垛板

Windows phone 7 拉伸堆垛板,windows-phone-7,xaml,Windows Phone 7,Xaml,我想使用列表框创建歌曲列表,但布局有问题 目前我使用以下xaml: <ListBox x:Name="lstHistory" HorizontalAlignment="Stretch" Margin="12,284,0,90" Width="460"> <ListBox.ItemTemplate> <DataTemplate> <StackPanel Orie

我想使用列表框创建歌曲列表,但布局有问题

目前我使用以下xaml:

<ListBox x:Name="lstHistory" HorizontalAlignment="Stretch" Margin="12,284,0,90" Width="460">
            <ListBox.ItemTemplate>
                <DataTemplate>
                    <StackPanel Orientation="Horizontal" HorizontalAlignment="Stretch">
                        <StackPanel Orientation="Horizontal">
                            <Image Margin="5" VerticalAlignment="top" Source="{Binding Image}" />
                        </StackPanel>
                        <StackPanel Orientation="Vertical" VerticalAlignment="Stretch" HorizontalAlignment="Stretch">
                            <TextBlock Margin="8"
                                  TextWrapping="Wrap"
                                  VerticalAlignment="Top"
                                  HorizontalAlignment="Left"
                                  Text="{Binding Name}" />
                            <TextBlock Margin="8"
                                  VerticalAlignment="Top"
                                  HorizontalAlignment="Left"
                                  Text="{Binding Artist}" />
                            <TextBlock Margin="8,0,8,8"
                                  VerticalAlignment="Bottom"
                                  HorizontalAlignment="Right" Text="{Binding Time}" Opacity="0.25" />
                        </StackPanel>
                    </StackPanel>
                </DataTemplate>
            </ListBox.ItemTemplate>
        </ListBox>

我想把时间放在列表项的最右下角,但每次都在屏幕中间结束。

这是我得到的一个例子:

有人能告诉我怎么计算时间吗?

HorizontalAlignment=“Stretch”
在StackPanel上不起作用。您应该设置一个显式宽度(可能是432)

此外,图像不需要单独位于StackPanel中。

HorizontalAlignment=“Stretch”
在StackPanel上不起作用。您应该设置一个显式宽度(可能是432)


此外,图像本身不需要位于StackPanel中。

默认情况下,ListBoxItem占用尽可能少的空间。StackPanel也是如此。为了使其具有跨度,必须将ListBox的HorizontalContentAlignment设置为Stretch,并将StackPanel的HorizontalAlignment设置为Stretch(您已经在这样做了)。您还需要为列表框设置ItemContainerStyle

<ListBox x:Name="lstHistory" HorizontalContentAlignment="Stretch" Margin="12,284,0,90">
        <ListBox.ItemTemplate>
            <DataTemplate>
                <StackPanel Orientation="Horizontal" HorizontalAlignment="Stretch">
                    <Image Margin="5" VerticalAlignment="top" Source="{Binding Image}" />
                    <StackPanel Orientation="Vertical" VerticalAlignment="Stretch" HorizontalAlignment="Stretch">
                        <TextBlock Margin="8"
                              TextWrapping="Wrap"
                              VerticalAlignment="Top"
                              HorizontalAlignment="Left"
                              Text="{Binding Name}" />
                        <TextBlock Margin="8"
                              VerticalAlignment="Top"
                              HorizontalAlignment="Left"
                              Text="{Binding Artist}" />
                        <TextBlock Margin="8,0,8,8"
                              VerticalAlignment="Bottom"
                              HorizontalAlignment="Right" Text="{Binding Time}" Opacity="0.25" />
                    </StackPanel>
                </StackPanel>
            </DataTemplate>
        </ListBox.ItemTemplate>
        <ListBox.ItemContainerStyle>
            <Style TargetType="ListBoxItem">
                <Setter Property="HorizontalContentAlignment" Value="Stretch"/>
            </Style>
        </ListBox.ItemContainerStyle>
    </ListBox>


默认情况下,ListBoxItem占用尽可能少的空间。StackPanel也是如此。为了使其具有跨度,必须将ListBox的HorizontalContentAlignment设置为Stretch,并将StackPanel的HorizontalAlignment设置为Stretch(您已经在这样做了)。您还需要为列表框设置ItemContainerStyle

<ListBox x:Name="lstHistory" HorizontalContentAlignment="Stretch" Margin="12,284,0,90">
        <ListBox.ItemTemplate>
            <DataTemplate>
                <StackPanel Orientation="Horizontal" HorizontalAlignment="Stretch">
                    <Image Margin="5" VerticalAlignment="top" Source="{Binding Image}" />
                    <StackPanel Orientation="Vertical" VerticalAlignment="Stretch" HorizontalAlignment="Stretch">
                        <TextBlock Margin="8"
                              TextWrapping="Wrap"
                              VerticalAlignment="Top"
                              HorizontalAlignment="Left"
                              Text="{Binding Name}" />
                        <TextBlock Margin="8"
                              VerticalAlignment="Top"
                              HorizontalAlignment="Left"
                              Text="{Binding Artist}" />
                        <TextBlock Margin="8,0,8,8"
                              VerticalAlignment="Bottom"
                              HorizontalAlignment="Right" Text="{Binding Time}" Opacity="0.25" />
                    </StackPanel>
                </StackPanel>
            </DataTemplate>
        </ListBox.ItemTemplate>
        <ListBox.ItemContainerStyle>
            <Style TargetType="ListBoxItem">
                <Setter Property="HorizontalContentAlignment" Value="Stretch"/>
            </Style>
        </ListBox.ItemContainerStyle>
    </ListBox>


您希望它显示在屏幕的下角,但这是列表框中的一个元素。列表中的每个元素都将显示
时间
。是否要将其放在列表项的右下角?上传屏幕截图。将listbox上的HorizontalContentAlignment设置为“Stretch”(拉伸)。您希望它显示在屏幕的下角,但这是listbox中的一个元素。列表中的每个元素都将显示
时间
。是否要将其放在列表项的右下角?上传屏幕截图。将ListBox上的HorizontalContentAlignment设置为“Stretch”(伸展)。如果StackPanel有伸展空间,则该选项适用于StackPanel。如果StackPanel有伸展空间,则该选项适用于StackPanel。