我想要做的是接下来,我有一个带有3个dataGrids的MainWindow,它们包含在StackPanel中,我想在这里做什么,我想将数据网格宽度调整为:例如30%的屏幕,因为那里是3个数据网格,它将是屏幕宽度空间的90%,这是可以的,因为我将只使用MainWindow和dataGrids来呈现一些数据。重要的是要注意我将在不同尺寸的显示器/显示器上使用它。
正如您所看到的,因为我在dataGrids中没有任何数据,所以它们非常狭窄。我怎么能将它们的宽度保持在堆栈面板的30%或其他任何数据上,不管数据与否,我希望dataGrids保持30%的屏幕宽度。
MinWidth=""
或类似的东西?
谢谢你们,干杯
P.S我在小屏幕上测试它,当我用dataGrids填充数据时,我根本看不到第三个dataGrid :(
答案 0 :(得分:1)
使用Grid
列。宽度=“ n *”表示按比例设置宽度:3 + 3 + 3 + 1 == 10,因此在这种情况下,列宽“3 *”将是总数的十分之三宽度。当你伸展父母时,他们会适当调整大小。
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="3*" />
<ColumnDefinition Width="3*" />
<ColumnDefinition Width="3*" />
<ColumnDefinition Width="1*" />
</Grid.ColumnDefinitions>
<DataGrid Grid.Column="0">
</DataGrid>
<DataGrid Grid.Column="1">
</DataGrid>
<DataGrid Grid.Column="2">
</DataGrid>
<!-- You don't need a control to fill the remaining 1* column. -->
</Grid>