WPF 将 dataGrid witdth 设置为屏幕或父级宽度的 30%
WPF set dataGrid witdth to 30% of screen or parent's width
接下来我想做的是,我有一个带有 3 个数据网格的主窗口,它们包含在 StackPanel 中,我想在这里做的是,我想将数据网格宽度调整为:例如屏幕的 30%,因为有 3 个数据网格,它将占屏幕宽度的 90% space,这没关系,因为我将仅使用 MainWindow 和那个数据网格来呈现一些数据。重要的是要注意我将在不同大小的 monitors/displays.
上使用它
这是我正在谈论的图像:
如您所见,因为我在 dataGrids 中没有任何数据,所以它们非常狭窄。我怎样才能将它们的宽度保持在该堆栈面板的 30% 或其他任何东西上,无论是否有数据,我都希望 dataGrids 保持屏幕宽度的 30%。
MinWidth=""
或类似的东西?
谢谢大家,干杯
P.S 我在小屏幕上测试过,当我用数据填充 dataGrids 时,我根本看不到第三个 dataGrid :(
使用 Grid
列。 width="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>
接下来我想做的是,我有一个带有 3 个数据网格的主窗口,它们包含在 StackPanel 中,我想在这里做的是,我想将数据网格宽度调整为:例如屏幕的 30%,因为有 3 个数据网格,它将占屏幕宽度的 90% space,这没关系,因为我将仅使用 MainWindow 和那个数据网格来呈现一些数据。重要的是要注意我将在不同大小的 monitors/displays.
上使用它这是我正在谈论的图像:
如您所见,因为我在 dataGrids 中没有任何数据,所以它们非常狭窄。我怎样才能将它们的宽度保持在该堆栈面板的 30% 或其他任何东西上,无论是否有数据,我都希望 dataGrids 保持屏幕宽度的 30%。
MinWidth=""
或类似的东西?
谢谢大家,干杯
P.S 我在小屏幕上测试过,当我用数据填充 dataGrids 时,我根本看不到第三个 dataGrid :(
使用 Grid
列。 width="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>