【发布时间】:2018-04-20 01:08:33
【问题描述】:
我的 WPF 应用程序中有一个网格。此网格有两列和一行。
现在,我正在尝试将第一列内容向右对齐,第二列内容向左对齐,如下所示:
-----------------------------------------------------
| ProgressControlSpinner|"Loading..."|
-----------------------------------------------------
相反,我得到:
-----------------------------------------------------
|ProgressControlSpinner|"Loading..." |
-----------------------------------------------------
请注意,我希望第二列自动调整为文本宽度。 此网格也应扩展到包含它的外部网格列。
我的网格如下:
<Grid x:Name="MyGrid" Grid.Column="1" Margin="3" Visibility="Collapsed">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="auto"/>
</Grid.ColumnDefinitions>
<controls:ProgressControlSpinner Grid.Column="0" Width="20" Height="20" HorizontalAlignment="Right"/>
<TextBlock Margin="3 0 0 0" Grid.Column="1" VerticalAlignment="Center" HorizontalAlignment="Left" Text="Loading..." />
</Grid>
注意:此网格包含在另一个外部网格中。
【问题讨论】:
-
Xaml 是正确的。你在代码隐藏中做什么?该网格是外部容器的子级,可能存在问题。第二个 screenshot 上的空白可能属于它(您可以设置
Background进行检查)。你能显示更多的 xaml 吗? -
@Sinatr 是的,问题出在外部网格中。列定义宽度不正确。看我的回答。