2014-03-31 2 views
1

저는 Windows Phone 8 개발에 익숙하지 않으며 매우 기본적인 질문이 있습니다.LongListSelector는 화면 너비에 따라 조정합니다.

저는 LongListSelector를 100 % 너비와 높이로 만들고 싶습니다.하지만 시도한 모든 것들은 작동하지 않았습니다.

나는 Auto, * 등을 시도했지만 아무 것도하지 않는 것 같습니다. 어떤 도움이 많이 이해할 수있을 것이다

<!--LayoutRoot is the root grid where all page content is placed--> 
<Grid x:Name="LayoutRoot" Background="Transparent"> 
    <Grid.RowDefinitions> 
     <RowDefinition Height="Auto"/> 
     <RowDefinition Height="*"/> 
    </Grid.RowDefinitions> 

    <!--TitlePanel contains the name of the application and page title--> 
    <StackPanel Grid.Row="0" Margin="12,17,0,28"> 
     <TextBlock Text="{Binding Path=LocalizedResources.ApplicationTitle, Source={StaticResource LocalizedStrings}}" Style="{StaticResource PhoneTextNormalStyle}"/> 
     <TextBlock TextWrapping="Wrap" Text="{Binding Path=LocalizedResources.SetupsPageTitle, Source={StaticResource LocalizedStrings}}" Margin="9,-7,0,0" Style="{StaticResource PhoneTextTitle1Style}"/> 
    </StackPanel> 

    <!--ContentPanel - place additional content here--> 
    <Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0"> 

     <phone:LongListSelector HorizontalAlignment="Left" Width="400" Height="400" 
         VerticalAlignment="Top" 
         Name="lstSetups" ItemsSource="{Binding BusRouteSetups}" 
         SelectionChanged="lstSetups_SelectionChanged" 
         LayoutMode="List"> 
      <phone:LongListSelector.ItemTemplate> 
       <DataTemplate> 
        <StackPanel Orientation="Vertical" Margin="0,10,0,10" Background="Coral"> 
         <TextBlock TextWrapping="Wrap" Margin="5" FontWeight="Bold" Text="{Binding Details.Title}" /> 
         <TextBlock TextWrapping="Wrap" Margin="5" Text="{Binding Details.Description}" /> 
        </StackPanel> 
       </DataTemplate> 
      </phone:LongListSelector.ItemTemplate> 
     </phone:LongListSelector> 

    </Grid> 

</Grid> 

:

여기 내 코드입니다.

+1

'LongListSelector'의'Width' 속성을 '400'으로 설정하면 절대 크기가 더 커지지 않습니다 ... –

+0

크기와 높이를 설정하여 찾을 때까지 사용할 수 있도록 설정했습니다 해결책. – panais

+0

그런 다음 문제를 재현하는 코드를 게시하십시오. –

답변

2

사용 HorizontalAlignment로 = 스트레치 (또한 수직)는, LLS의 다음 너비와 높이가 그 제어 사용할 수 있습니다 최대 공간으로 설정됩니다 Control의 부모). RowDefinition의 Height를 *으로 설정하는 동안 화면의 나머지 높이를 모두 사용한다는 의미입니다. 나머지 (일부는 첫 행에 자동으로 설정 됨) - 제목이있는 StackPanel).

1

HorizontalAlignment로 = "왼쪽"너비 = "400"높이 = "400"VerticalAlignment = "최고"

그냥 코드의이 부분을 제거하고 컨트롤이 자동으로 sretched해야합니다.

<phone:LongListSelector HorizontalAlignment="Stretch"     
         VerticalAlignment="Stretch" 
         Name="lstSetups" ItemsSource="{Binding BusRouteSetups}" 
         SelectionChanged="lstSetups_SelectionChanged" 
         LayoutMode="List"> 

참고가 그리드 (에 의해 결정됩니다 최대 높이가 있다고 :

관련 문제