2012-10-01 2 views
2

실제 큰 그리드로 Windows 8 용 앱을 만들고 싶습니다.
사용자는이 격자를 가로 방향으로 스크롤 할 수 있어야합니다.Windows8의 화면보다 큰보기를 만들 수있는 방법

그러나 화면의 너비를 해상도 widt보다 큰 숫자로 정의하더라도 모눈은 화면 중간에 나타납니다. 그래서 난

이 또한 내가 파란색으로 동적 그리드의 backround에 색이 더 잘 볼 수 있습니다 내가 아쿠아의 주요 그리드의 테두리 색

enter image description here

: 여기

는 스크린 샷입니다 .

<Page.Resources> 

    <!-- Auflistung von Elementen, die von dieser Seite angezeigt werden --> 
    <CollectionViewSource 
     x:Name="itemsViewSource" 
     Source="{Binding Items}"/> 

    <!-- TODO: Diese Zeile löschen, wenn der Schlüssel "AppName" in "App.xaml" deklariert ist --> 
    <x:String x:Key="AppName">My Application</x:String> 
</Page.Resources> 

<!-- 
    Dieses Raster fungiert als Stammbereich für die Seite, die zwei Zeilen definiert: 
    * Zeile 0 enthält die Schaltfläche "Zurück" und den Seitentitel. 
    * Zeile 1 enthält den Rest des Seitenlayouts. 
--> 
<Grid Style="{StaticResource LayoutRootStyle}"> 
    <Grid.RowDefinitions> 
     <RowDefinition Height="140"/> 
     <RowDefinition Height="*"/> 
    </Grid.RowDefinitions> 

    <!-- Schaltfläche "Zurück" und Seitentitel --> 
    <Grid> 
     <Grid.ColumnDefinitions> 
      <ColumnDefinition Width="Auto"/> 
      <ColumnDefinition Width="*"/> 
     </Grid.ColumnDefinitions> 
     <Button x:Name="backButton" Click="GoBack" IsEnabled="{Binding Frame.CanGoBack, ElementName=pageRoot}" Style="{StaticResource BackButtonStyle}"/> 
     <TextBlock x:Name="pageTitle" Grid.Column="1" Text="{StaticResource AppName}" Style="{StaticResource PageHeaderTextStyle}"/> 
     <Button Content="Button" Grid.Column="1" HorizontalAlignment="Left" Margin="705,92,0,0" VerticalAlignment="Top" Click="Button_Click_1"/> 
    </Grid> 

    <!-- Raster mit horizontalem Bildlauf (wird in den meisten Ansichtsstatus verwendet) --> 
    <GridView 
     x:Name="itemGridView" 
     TabIndex="1" 
     Grid.Row="1" 
     Grid.Column="0" 
     Margin="0,-4,0,0" 
     Padding="116,0,116,46" Grid.ColumnSpan="1" SelectionMode="None" BorderThickness="3" BorderBrush="Aqua"/> 

그리고 THS는 C#을 :

은 XAML입니다

this.InitializeComponent(); 

this.itemGridView.FlowDirection = Windows.UI.Xaml.FlowDirection.LeftToRight; 
this.itemGridView.ItemContainerStyle = null; 

pageTitle.Text = startFolder.name; 
Windows.UI.Xaml.Thickness th = new Thickness(0, 0, 0, 0); 
this.Margin = th; 

this.itemGridView.Margin = th; 
this.itemGridView.Width = 2000; 
+1

을 제거, 당신은 <에서 ScrollViewer>에서 스크롤 내용을 포장해야합니다. – Spevy

+0

의견을 보내 주셔서 감사합니다. 그러나 이것은 제가 의미하는 바가 아닙니다. – Vlorian

답변

2

바트, 내 앱의 방문 그리드 페이지를 개발하는 동안 동일한 문제가있었습니다. 기본 그리드에서 ColumnDefinitions를 정의하지 않았으므로 Grid.Column은 XAML입니다. 페이지 제목 및 뒤로 버튼에만 사용되므로 열 정의가있는 표와 혼동하지 마십시오.

그리드보기 XAML은 다음과 유사해야합니다. C# 코드에서

<!-- Horizontal scrolling grid used in most view states --> 
    <GridView 
     x:Name="itemGridView" 
     AutomationProperties.AutomationId="ItemsGridView" 
     AutomationProperties.Name="Items" 
     TabIndex="1" 
     Grid.RowSpan="2" 
     Padding="116,136,116,46" 
     ItemsSource="{Binding Source={StaticResource itemsViewSource}}" 
     ItemTemplate="{StaticResource DefaultGridItemTemplate}" 
     SelectionMode="None" 
     IsSwipeEnabled="false" 
     IsItemClickEnabled="True" 
     ItemClick="ItemView_ItemClick"/> 

, 그냥 다음 줄을 내가 질문을 이해한다면 모두에게

this.InitializeComponent();  
0

당신이 그것에 더 많은 콘텐츠를 추가대로의 GridView는 성장할 것이다 - 당신이 바운드 무엇이 우리를 표시하지 않은 어떻게 거기에 상자가 이미 표시되어 있는지를 알려줍니다.

itemsViewSource에 더 많은 항목이 포함되어 있으면 GridView에 나타나야하며 모든 항목이 표시됩니다.

관련 문제