2014-09-05 65 views
0

我使用Windows Phone工具包中的ListPicker。我的选择是相当漫长的,所以我的ItemTemplate是,如何在Windows Phone 8中包装ListPicker SelectedItem

<DataTemplate> 
<TextBlock TextWrapping="Wrap"/> 
</DataTemplate> 

现在,当我在扩展模式(小于5个选项),它是作为预期工作好,选择一个漫长的选项(比如三线),但是当我使用FullMode(超过5项)不包含在ListPicker中。

为了更加清楚,它按照预期包裹在FullModePage中,但它不在控制之内。你将需要

<toolkit:ListPicker Margin="0" MinHeight="70" toolkit:TiltEffect.SuppressTilt="True" Template="{StaticResource ListPickerControlCustomTemplate}" HorizontalAlignment="Stretch" VerticalAlignment="Top" FontFamily="{StaticResource RegularFont}" 
    SelectionChanged="SharedAppsCategoryListPicker_OnSelectionChanged" Name="SharedAppsCategoryListPicker" 
         LayoutUpdated="SharedAppsCategoryListPicker_OnLayoutUpdated" > 

      <toolkit:ListPicker.ItemTemplate> 
      <DataTemplate> 

       <Grid Margin="0,0,20,0"> 
        <TextBlock TextWrapping="Wrap" VerticalAlignment="Center" HorizontalAlignment="Stretch" Margin="20,15,120,15" FontSize="20" Text="{Binding groupname}" Foreground="{StaticResource ListPickerForegroundColor}"></TextBlock> 
        <Rectangle Margin="20,10,0,-11" Height="0.5" HorizontalAlignment="Stretch" VerticalAlignment="Bottom" Stroke="{StaticResource ListPickerDividerColor}" StrokeThickness="0.5" /> 
       </Grid> 
      </DataTemplate> 
     </toolkit:ListPicker.ItemTemplate> 

     <toolkit:ListPicker.FullModeItemTemplate> 
      <DataTemplate> 
        <Grid Margin="0,0,20,0"> 
         <TextBlock MaxWidth="250" Width="250" TextWrapping="Wrap" FontSize="20" Margin="0,0,120,0" VerticalAlignment="Center" Text="{Binding groupname}" Foreground="{StaticResource ListPickerForegroundColor}" FontFamily="{StaticResource RegularFont}"></TextBlock>       
        </Grid> 
       </DataTemplate> 
     </toolkit:ListPicker.FullModeItemTemplate> 

    </toolkit:ListPicker> 

回答

2

宽度的文本块后,如果含量比文字块的宽度则文本将被包装。

试试这个:

<DataTemplate> 
<TextBlock TextWrapping="Wrap" width=200/> 
</DataTemplate> 

编辑:

我已经Implemeted一个这样说

XAML:O/P的

<toolkit:ListPicker Margin="0" MinHeight="70" toolkit:TiltEffect.SuppressTilt="True" HorizontalAlignment="Stretch" VerticalAlignment="Top" Name="SharedAppsCategoryListPicker" > 
        <toolkit:ListPicker.ItemTemplate> 
         <DataTemplate> 
          <Grid Margin="0,0,20,0"> 
           <TextBlock Width="300" TextWrapping="Wrap" VerticalAlignment="Center" HorizontalAlignment="Stretch" Margin="20,15,120,15" FontSize="20" Text="{Binding}" ></TextBlock> 
          </Grid> 
         </DataTemplate> 
        </toolkit:ListPicker.ItemTemplate> 

        <toolkit:ListPicker.FullModeItemTemplate> 
         <DataTemplate> 
          <Grid Margin="0,0,20,0"> 
           <TextBlock Width="400" TextWrapping="Wrap" FontSize="20" Margin="0,0,0,0" VerticalAlignment="Center" Text="{Binding}" ></TextBlock> 
          </Grid> 
         </DataTemplate> 
        </toolkit:ListPicker.FullModeItemTemplate> 
       </toolkit:ListPicker> 

图片:

Normal Full mode

+0

试过宽度和MaxWidth。但没有运气。 – 2014-09-05 11:20:46

+0

将其他代码粘贴到问题中,以便其他人也可以通过粘贴代码并对其进行测试来帮助您。 – 2014-09-05 11:22:06

+0

尝试正确设置边距。其工作正常。我已经实现了它。 – 2014-09-05 11:52:13