我有一個問題,使網格(用戶列表)不能垂直延伸到停靠面板的整個可用空間。網格不能延伸到整個DockPanel
我的簡化網格是在一個用戶控件:
<DockPanel Background="Yellow">
<ContentControl Content="{Binding UserView}" Background="Red"/>
</DockPanel>
主窗口後面的視圖模型通過用戶視圖返回正確的用戶控件:作爲
<Grid Name="MainGrid" Background="Black">
<Grid.RowDefinitions>
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<DataGrid Name="UserDataGrid" ItemsSource="{Binding UsersProfiles, Mode=OneWay}"
AutoGenerateColumns="False" Margin="5" Grid.Row="0">
<DataGrid.Columns>
<DataGridTextColumn Header="User Id" Binding="{Binding UserIdentifier}"
Width="100" IsReadOnly="True" />
</DataGrid.Columns>
</DataGrid>
我的窗口是一樣簡單。 網格水平延伸但不垂直。爲什麼?
的問題可能是DockPanel中本身不被垂直拉伸到它的容器中。我建議:第一,你添加一個'DockPanel.Dock ='屬性到'ContentControl'元素,看看是否有差別。 – Jay 2012-02-03 16:01:04
你確定它沒有垂直拉伸嗎?更改'DataGrid'的'Background'顏色進行測試。 DataGrid行不會伸展,但DataGrid本身會。如果你想將行垂直伸展你要麼需要實現自己的'Template',或者使用不同的控制,如'ItemsControl'其'ItemsPanel'設置爲你的'Grid' – Rachel 2012-02-06 15:27:25