문제

나는 스택 패널의 패딩을 설정하려고하지만 그러한 속성은 없습니다. 나는 stackpanel.border를 시도했지만 그러한 속성도 없습니다.

어떤 아이디어?

도움이 되었습니까?

해결책

스택 패널 주위에 테두리를 놓고 패딩을 설정할 수 있습니다. 패딩 속성이없는 많은 uielement가 있기 때문에 나는 이것을 많이합니다.

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

(참고 : 모든 프레임 워크 요소에는 여백 속성이있어 요소를 공간화하지만 실제 폭의 일부로 여백 너비를 포함하지는 않습니다).

StackPanel 내부의 품목을 공간에 공간하려면 Rob이 말한 것처럼 각 어린이에게 여백을 추가하고 싶을 것입니다.

다른 팁

StackPanel (패딩 속성이없는)의 자식 요소를 공간으로 공간으로 만들고 싶다면 다음을 참조하십시오. 스택패 넬의 어린이 요소를 어떻게 공간에 공급합니까?

또는 Tim과 비슷한 일을 할 수 있습니다.

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

대신 패널의 항목에 여백을 추가하고 싶을 것입니다. 같은 결과를 얻을 수 있습니다. 그냥 뒤로 접근해야합니다.

당신이 찾고있는 마진 일 수 있습니까?

이것은 Stackpanel의 요소에 대한 패딩의 변형입니다.

<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>
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top