如何在 WPF 网格 (.NET5) 中以编程方式在顶部添加新行

How to add new rows at top programmatically in WPF grid (.NET5)

我正在使用 WPF 和 .NET5 开发一个 Windows 应用程序,我在其中使用网格显示一些内容,我需要以编程方式在网格顶部添加一个新行。

我考虑过的一种方法是修改每个现有行的行号,但这是一项繁琐的任务。我正在使用网格来显示内容,因为网格会随着主 window 的扩展而动态扩展,而据我所知,其他容器不会显示此行为。

我考虑的另一种方法是使用 gridName.Childern.Insert() 插入一行,但它会插入并重叠现有行。

我需要一个解决方案,要么在网格顶部动态添加一个新行而不重叠,要么使其他容器(如 Stack Panel 和 Dock Panel)在最大化主 window.

有没有其他有效的方法来实现这个功能?

这是个很烦人的问题。

您必须更改所有 Grid.Row、Grid.Column

但是你可以选择其他的东西

如果只需要一个方向,可以使用StackPanel

如果没有,你应该使用 WrapPanel