source

스택 패널의 패딩?

ittop 2023. 5. 17. 23:25
반응형

스택 패널의 패딩?

스택 패널의 패딩을 설정하려고 하는데 해당 속성이 없습니다.StackPanel을 사용해봤습니다.국경이지만, 그런 속성도 없습니다.

아이디어 있어요?

스택 패널 주위에 테두리를 두르고 그 위에 패딩을 설정할 수 있습니다.패딩 속성이 없는 UI 요소가 많기 때문에 이 작업을 많이 하게 됩니다.

<Border Padding="10">
    <StackPanel>
        <!--...-->
    </StackPanel>
</Border>

(참고: 모든 FrameworkElements에는 여백 속성이 있습니다. 이 속성은 요소에 공백을 두지만 실제 너비의 일부로 여백 너비를 포함하지는 않습니다.)

스택 패널 내에서 항목의 공간을 확보하려면 Rob이 말한 대로 각 하위 항목에 여백을 추가해야 합니다.

또는 TiM과 유사한 작업을 수행할 수 있습니다.

<Border>
    <StackPanel Margin="10">
        ...
    </StackPanel>
</Border>

패딩 속성이 없는 스택 패널의 하위 요소를 공백으로 표시하려면: 스택 패널의 하위 요소를 어떻게 공백으로 표시합니까?를 참조하십시오.

대신 패널의 항목에 여백을 추가할 수 있습니다.같은 결과를 얻을 수 있을 거예요, 그냥 거꾸로 접근하면 돼요.

스택 패널 요소에 대한 패딩의 변형입니다.

<StackPanel Orientation="Horizontal" Grid.Row="2">
    <StackPanel.Resources>
         <Style x:Key="StackPanelPadding" TargetType="Control">
            <Setter Property="Margin" Value="5,0,0,0"/>
            <Setter Property="Height" Value="40"/>
         </Style>
         <Style BasedOn="{StaticResource StackPanelPadding}" TargetType="Button"/>
    </StackPanel.Resources>
    <Button/>
    <Button/>
</StackPanel>

언급URL : https://stackoverflow.com/questions/1303693/padding-on-stackpanel

반응형