내용이 격자 인 WPF 컨트롤에서 작업하고 있습니다. 나는 상대적으로 WPF에 익숙하지 않기 때문에 아래에 이것이 올바른지에 관해 궁금해하고있다.WPF 격자 레이아웃 및 셀 내용 여백
<Window
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
x:Class="UntitledProject8.Window1"
x:Name="Window"
Title="Window1"
Width="200" Height="200">
<Grid x:Name="LayoutRoot">
<Grid HorizontalAlignment="Left" VerticalAlignment="Top" Width="100" Height="100"/>
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<Label Grid.Row="0" Content="1.23" FontSize="18" HorizontalAlignment="Center" VerticalAlignment="Bottom"/>
<Label Grid.Row="1" Content="45" FontSize="48" HorizontalAlignment="Center" VerticalAlignment="Top"/>
</Grid>
I이 레이블의 수직 배향이되도록 연속 제로의 라벨은 정렬되어 설정 :
나는 동일한 열하지만 인접한 행 모두에서, 그리드에서 두 개의 라벨을 배치 하단에 있고 1 행의 라벨이 상단에 정렬되어 있습니다.자, 이것은 내가 원하는 것에 가깝지만 행 0의 레이블 텍스트에 더 가깝도록 행 1의 레이블 실제 텍스트가 필요합니다. 이를 위해 나는 음의 값으로 1 행에서 라벨의 여백을 설정
<Window
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
x:Class="UntitledProject8.Window1"
x:Name="Window"
Title="Window1"
Width="200" Height="200">
<Grid x:Name="LayoutRoot">
<Grid HorizontalAlignment="Left" VerticalAlignment="Top" Width="100" Height="100"/>
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<Label Grid.Row="0" Content="1.23" FontSize="18" HorizontalAlignment="Center" VerticalAlignment="Bottom"/>
<Label Grid.Row="1" Content="45" FontSize="48" HorizontalAlignment="Center" VerticalAlignment="Top" Margin="0,-20,0,0"/>
</Grid>
이 올바른 방법으로 그것을 할인가요? 위의 예제는 단순하지만 그리드 내용이 커지면서 (다른 레이아웃 컨테이너 포함과 같이) 컨트롤 마진에 대해 서로 다른 값을 설정하면 인접한 셀을 더 가깝게 또는 멀리 떨어지게하는 올바른 방법이 무엇입니까?
WinForms (예 : 위치 및 크기 값에 대한 정확한 좌표 설정)에서 작업 할 때 "디자이너"값을 하드 코딩하지 않도록 최선을 다하고 있으므로 레이아웃 관리자가 처리하도록합니다. 그러나 마진을 설정하는 것이 유일한 방법입니다.
감사합니다.