2017-03-23 1 views
0

작은 단일 페이지 C# UWP 응용 프로그램에서 작업하고 있습니다. 디자인보기에서 모든 것을 확인하면 불필요한 공백이 없습니다. 그러나 내가 그것을 실행할 때 창은 전체 디자인 주위에 빈 공간의 커다란 테두리를 가지고 있으며 끔찍한 것처럼 보입니다. 아래에는 디자인과 실행중인 윈도우의 스크린 샷이 포함되어 있습니다. 이 여분의 공백을 제거하려면 어떻게해야합니까?실행할 때 프로젝트 주위에 불필요한 공백이 있습니다.

디자인보기 (더 이상 공백) :

Design view, no weird white space

실행 (이상한 공백) :

Running, weird white space

응용 프로그램 창, 400x200까지 확장 상당히 작습니다. 이 값을 변경해 보았습니다 만, 컨트롤을 함께 정리하고 테두리 주위에 공백을 추가하는 것뿐입니다.

편집 : 분명히 디자인보기가 좋음에도 불구하고 제 XAML에 문제가있어 여기 있습니다.

<Page x:Class="ReservationManager.Views.StartPage" 
     xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
     xmlns:local="using:ReservationManager.Views" 
     xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
     xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
     mc:Ignorable="d" 
     DataContext="{Binding StartPageInstance, Source={StaticResource Locator}}" 
     Width="400" 
     Height="200"> 

    <Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}"> 
     <Grid.ColumnDefinitions> 
      <ColumnDefinition Width="*" /> 
      <ColumnDefinition Width="*" /> 
     </Grid.ColumnDefinitions> 
     <Grid.RowDefinitions> 
      <RowDefinition /> 
      <RowDefinition /> 
      <RowDefinition /> 
     </Grid.RowDefinitions> 

     <Grid Grid.Row="0"> 
      <Grid.ColumnDefinitions> 
       <ColumnDefinition Width="*" /> 
       <ColumnDefinition Width="*" /> 
      </Grid.ColumnDefinitions> 
      <TextBlock Name="Label1" 
         VerticalAlignment="Center" 
         HorizontalAlignment="Center" 
         Text="Label 1: " 
         FontFamily="Segoe UI Historic" /> 
      <TextBox Grid.Column="1" 
        VerticalAlignment="Center" 
        Name="TextBox1" 
        MaxLength="7" 
        Text="{Binding tb1, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" /> 
     </Grid> 

     <Grid Grid.Row="0" 
       Grid.Column="1"> 
      <Grid.ColumnDefinitions> 
       <ColumnDefinition Width="*" /> 
       <ColumnDefinition Width="*" /> 
      </Grid.ColumnDefinitions> 
      <TextBlock Grid.Column="0" 
         Name="Label2" 
         VerticalAlignment="Center" 
         HorizontalAlignment="Center" 
         Text="Label 2: " 
         Margin="10,0,0,0" 
         FontFamily="Segoe UI Historic" /> 
      <TextBox Grid.Column="1" 
        VerticalAlignment="Center" 
        Name="TextBox2" 
        Text="{Binding tb2, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" /> 
     </Grid> 

     <Grid Grid.Row="1" 
       Grid.Column="0"> 
      <Grid.ColumnDefinitions> 
       <ColumnDefinition Width="*" /> 
       <ColumnDefinition Width="*" /> 
      </Grid.ColumnDefinitions> 
      <TextBlock Grid.Column="0" 
         Name="Label3" 
         VerticalAlignment="Center" 
         HorizontalAlignment="Center" 
         Text="Label 3: " 
         FontFamily="Segoe UI Historic" /> 
      <ComboBox Grid.Column="1" 
         VerticalAlignment="Center" 
         Name="Dropdown" 
         ItemsSource="{Binding cb}" 
         SelectedValue="{Binding cb1, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" 
         DisplayMemberPath="Name" /> 
     </Grid> 

     <StackPanel VerticalAlignment="Center" 
        HorizontalAlignment="Center" 
        Grid.Row="1" 
        Grid.Column="1"> 
      <RadioButton IsChecked="{Binding IsReserveChecked, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" 
         GroupName="Radio" 
         Content="radio1" /> 
      <RadioButton IsChecked="{Binding IsUnreserveChecked, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" 
         GroupName="Radio" 
         Content="radio2" /> 
     </StackPanel> 

     <TextBlock Grid.Row="2" 
        Grid.Column="0" 
        VerticalAlignment="Center" 
        HorizontalAlignment="Center" 
        Foreground="Red"> 
      Warning: ---- 
     </TextBlock> 

     <Button Grid.Row="2" 
       Grid.Column="1" 
       HorizontalAlignment="Center" 
       VerticalAlignment="Center" 
       Content="Execute" 
       Command="{Binding ExecuteCommand}" /> 
    </Grid> 
</Page> 
+0

완전히 확실하지,하지만 그리드 컨트롤이 사실 레이아웃 주어진 모든 공간이 소요되며, 모든 그리드 셀의 중앙에 정렬하십시오. 그 사이의 빈 공간이 예상됩니다! –

답변

1

"기본 최소 크기"가 기본값으로 너무 높게 설정되어 문제가 발생했습니다. 코드에 아래 라인을 추가

뒤에 문제 해결 : 여기 원하는 것을

ApplicationView.GetForCurrentView().SetPreferredMinSize(new Size { Width = 250, Height = 200 }); 
관련 문제