gpt4 book ai didi

wpf - WPF中TableColumn和GridColumn的Auto和Star的区别

转载 作者:行者123 更新时间:2023-12-03 20:28:29 24 4
gpt4 key购买 nike

在 Grid 中,Auto 表示内容宽度将定义列宽,Star 表示列宽将使用可用的左侧空间。

但是在表中,我发现了不同的行为。如果您有 3 列的宽度:100、Auto、100;第二列的宽度不取决于其内容。相反,它使用剩余的可用空间作为其宽度。

此外,在表格中,如果将星形列与自动或固定像素宽度列组合在一起,星形列将非常小,大约 1 个字符宽度。

任何人都可以解释这是表中的错误,还是仅仅是默认行为?

附加信息:
如果我将 Auto 与固定宽度结合使用,则 Auto 列(第二个)将使用剩余的可用空间。

<Table>
<Table.Columns>
<TableColumn Width="100"/>
<TableColumn Width="Auto"/>
<TableColumn Width="100"/>
</Table.Columns>
<TableRowGroup>
<TableRow>
<TableCell>...
<TableCell>...
<TableCell>...
</TableRow>
</TableRowGroup>
</Table>

screenshot 1

如果我将 Star 与固定宽度或 Auto 组合,则 Star 列的宽度非常小,其他列将在剩余可用空间上平分。
<Table>
<Table.Columns>
<TableColumn Width="*"/>
<TableColumn Width="100"/>
<TableColumn Width="100"/>
</Table.Columns>
<TableRowGroup>
<TableRow>
<TableCell>...
<TableCell>...
<TableCell>...
</TableRow>
</TableRowGroup>
</Table>

screenshot 2

最佳答案

好的,我知道这不是一个答案,但由于目前没有其他人回应,我想我会尝试提供一点帮助。
这似乎是一个至少从 WPF 4.0 开始就存在的错误

https://connect.microsoft.com/VisualStudio/feedback/details/724483/the-width-of-tablecolumns-in-a-wpf-flowdocument-doesnt-work-with-non-star-widths

除非您使用星号,否则表格似乎相对无用,据我所知,它的功能更像是一个百分比,但也有一些不稳定的行为。

如果您将所有内容都设置为星号,它基本上相当于一刀切的自动,但是将一个或多个元素设置为星号以外的任何内容将导致现有星号占据总宽度的 1%,同样如果您将其更改为 50* 它会占总宽度的 50%。

我知道这不是很有帮助,但这是我能做的最好的。

关于wpf - WPF中TableColumn和GridColumn的Auto和Star的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7156129/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com