Development Tip

WPF에서 너비를 100 %로 설정하는 방법

yourdevel 2020. 11. 23. 20:17
반응형

WPF에서 너비를 100 %로 설정하는 방법


WPF의 구성 요소에 사용 가능한 공간의 100 %를 차지하도록 지시 하는 방법이 있습니까?

처럼

width: 100%;  

CSS에서

이 XAML이 있는데 Grid가 100 % 너비를 사용하도록 강제하는 방법을 모르겠습니다.

<ListBox Name="lstConnections">
  <ListBox.ItemTemplate>
    <DataTemplate>
      <Grid Background="LightPink">
        <Grid.ColumnDefinitions>
          <ColumnDefinition Width="Auto"/>
          <ColumnDefinition Width="Auto"/>
        </Grid.ColumnDefinitions>
        <Grid.RowDefinitions>
          <RowDefinition Height="Auto"/>
          <RowDefinition Height="Auto"/>
        </Grid.RowDefinitions>
        <TextBlock Grid.Row="0" Grid.Column="0" Text="{Binding Path=User}" Margin="4"></TextBlock>
        <TextBlock Grid.Row="0" Grid.Column="1" Text="{Binding Path=Password}" Margin="4"></TextBlock>
        <TextBlock Grid.Row="1" Grid.Column="0" Grid.ColumnSpan="2" Text="{Binding Path=Host}" Margin="4"></TextBlock>
      </Grid>
    </DataTemplate>
  </ListBox.ItemTemplate>
</ListBox>

결과는 다음과 같습니다.

대체 텍스트 http://foto.darth.cz/pictures/wpf_width.jpg

나는 그것을 분홍색으로 만들어서 얼마나 많은 공간을 차지하는지 분명합니다. 분홍색 격자를 100 % 너비로 만들어야합니다.


Grid너비에 부과 되는 컨테이너입니다 . 이 경우 ListBoxItem기본적으로 왼쪽 정렬되는입니다. 다음과 같이 늘 이도록 설정할 수 있습니다.

<ListBox>
    <!-- other XAML omitted, you just need to add the following bit -->
    <ListBox.ItemContainerStyle>
        <Style TargetType="ListBoxItem">
            <Setter Property="HorizontalAlignment" Value="Stretch"/>
        </Style>
    </ListBox.ItemContainerStyle>
</ListBox>

HorizontalContentAlignment="Stretch"다음과 같이 사용할 수 있습니다 .

<ListBox HorizontalContentAlignment="Stretch"/>

참고 URL : https://stackoverflow.com/questions/787436/how-to-set-width-to-100-in-wpf

반응형