这是一个相当简单的问题,技术上并不是什么大不了的事,但是当我看到这个问题时,我的强迫症正在刺痛。 我已经设计了一个基本的WPF应用程序,我无法弄清楚为什么按钮和文本框没有正确对齐,如图中所示(右下方):
这是负责它的代码:
<Grid Margin="283,365.288,18,10" Grid.ColumnSpan="2">
<Label Content="GUID" HorizontalAlignment="Left" Margin="0,0.998,0,0" VerticalAlignment="Top" Height="22.96"/>
<Label Content="UniqueID" HorizontalAlignment="Left" Margin="0,22.68,0,0" VerticalAlignment="Top" Height="25.516" Width="63.297"/>
<Label Content="Akt/GZ" HorizontalAlignment="Left" Margin="0,48.196,0,0" VerticalAlignment="Top" Height="25.516" Width="63.297"/>
<TextBox HorizontalAlignment="Left" Height="23.958" Margin="63.297,0,0,49.754" TextWrapping="Wrap" Text="TextBox" VerticalAlignment="Bottom" Width="125"/>
<TextBox HorizontalAlignment="Left" Height="23.958" Margin="63.297,0,0,25.796" TextWrapping="Wrap" Text="TextBox" VerticalAlignment="Bottom" Width="125"/>
<TextBox HorizontalAlignment="Left" Height="23.958" Margin="63.297,0,0,1.558" TextWrapping="Wrap" Text="TextBox" VerticalAlignment="Bottom" Width="125"/>
<Button Content="Search" HorizontalAlignment="Left" Margin="193.297,0.998,0,0" VerticalAlignment="Top" Width="60.703" Height="22.96"/>
<Button Content="Search" HorizontalAlignment="Left" Margin="193.297,25.236,0,0" VerticalAlignment="Top" Width="60.703" Height="22.96"/>
<Button Content="Search" HorizontalAlignment="Left" Margin="193.297,49.194,0,0" VerticalAlignment="Top" Width="60.703" Height="22.96"/>
<CheckBox Content="07" HorizontalAlignment="Left" Margin="259,5.498,0,0" VerticalAlignment="Top"/>
<CheckBox Content="10" HorizontalAlignment="Left" Margin="296.915,5.498,0,0" VerticalAlignment="Top"/>
<CheckBox Content="07" HorizontalAlignment="Left" Margin="259,29.736,0,0" VerticalAlignment="Top"/>
<CheckBox Content="10" HorizontalAlignment="Left" Margin="296.915,29.736,0,0" VerticalAlignment="Top"/>
<CheckBox Content="07" HorizontalAlignment="Left" Margin="259,53.694,0,0" VerticalAlignment="Top"/>
<CheckBox Content="10" HorizontalAlignment="Left" Margin="296.915,53.694,0,0" VerticalAlignment="Top"/>
</Grid>
无论哪种方式,我都不太确定是什么导致它......稍稍离开。另外(如果有人问)我不知道为什么我使用网格对这些对象进行分组,我在WPF中搜索了对象分组,我发现了一些答案,但Grid和Stackpanel似乎最容易使用,但Stackpanel给出了在正确对齐内容时,我会感到更头痛。 如果你有一些关于imlpementation的批评,请随意这样做,我已经订购了一些关于WPF设计的书籍,但我非常高兴并且愿意倾听经验丰富的开发者并学习。
我为“noobish”问题道歉,但我花了最后两天摆弄设置无济于事,不会来这里问其他问题。
谢谢
答案 0 :(得分:1)
您正以错误的方式使用Grid
布局。
建议不要在Margin
中使用Grid
,原因有很多(性能,拉伸问题等)
Grid
布局允许您设置行和列,并在表格中对控件进行排序。
您可以在此处阅读更多相关信息 http://www.wpftutorial.net/GridLayout.html
您首先必须使用ColumnDefinitions
和RowDefinitions
声明您的行和列,然后使用属性Grid.Row
和Grid.Column
将每个控件应用于其行和列p>
阅读我附上的链接将更好地解释