ฉันประหลาดใจที่ฉันยังไม่เห็นวิธีแก้ปัญหานี้โพสต์
มาจากเว็บเฟรมเวิร์กเช่น bootstrap จะใช้ระยะขอบลบเพื่อดึงแถว / คอลัมน์กลับมา
มันอาจจะดูละเอียดเล็กน้อย (แม้ว่าจะไม่แย่ขนาดนั้นก็ตาม) มันใช้งานได้และองค์ประกอบจะมีระยะห่างและขนาดเท่า ๆ กัน
ในตัวอย่างด้านล่างฉันใช้StackPanel
รูทเพื่อสาธิตว่าปุ่ม 3 ปุ่มมีระยะห่างเท่า ๆ กันโดยใช้ระยะขอบอย่างไร คุณสามารถใช้องค์ประกอบอื่น ๆ ได้เพียงแค่เปลี่ยน x ภายใน: พิมพ์จากปุ่มเป็นองค์ประกอบของคุณ
แนวคิดนี้ง่ายมากใช้เส้นตารางด้านนอกเพื่อดึงระยะขอบขององค์ประกอบออกจากขอบเขตครึ่งหนึ่งของจำนวนเส้นตารางด้านใน (โดยใช้ระยะขอบลบ) ใช้เส้นตารางด้านในเพื่อเว้นระยะห่างองค์ประกอบให้เท่า ๆ กันตามจำนวนที่คุณต้องการ
อัปเดต:
ความคิดเห็นบางส่วนจากผู้ใช้บอกว่าใช้ไม่ได้นี่คือวิดีโอสั้น ๆ ที่สาธิต: https://youtu.be/rPx2OdtSOYI
<StackPanel>
<Grid>
<Grid.Resources>
<Style TargetType="{x:Type Grid}">
<Setter Property="Margin" Value="-5 0"/>
</Style>
</Grid.Resources>
<Grid>
<Grid.Resources>
<Style TargetType="{x:Type Button}">
<Setter Property="Margin" Value="10 0"/>
</Style>
</Grid.Resources>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="*" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Button Grid.Column="0" Content="Btn 1" />
<Button Grid.Column="1" Content="Btn 2" />
<Button Grid.Column="2" Content="Btn 3" />
</Grid>
</Grid>
<TextBlock FontWeight="Bold" Margin="0 10">
Test
</TextBlock>
</StackPanel>