如何自动调整wpf文本框的宽度?

问题描述:

我希望我的文本框的宽度与其中的文本大小完全一致。如何自动调整wpf文本框的宽度?

所以,如果里面只有一个字符,它将是一个小宽度。 如果里面有一个长词,它将是一个很长的宽度,等等。

这是可能的,如果是这样的话 - 我该怎么做呢?

这取决于容器TextBox是在,但通常如果你设置HorizontalAlignment="Left"你会得到这种行为。

但是,如果是(例如)在DockPanelLastChildFill财产的最后一个元素设置为true,那么DockPanel会伸展出来给你。

这是TextBox的默认行为,但TextBox的父面板可能会影响TextBox的大小。

例如,Grid会自动拉伸它的孩子以填充所有可用空间。 A DockPanel将与添加到最后一个孩子相同,除非LastChildFill=False

您可以通过设置TextBox的HorizontalAlignment来覆盖父面板中的此行为。例如,设置HorizontalAlignment="Center"将使文本框位于Grid的中间,而不是拉伸它以填充所有剩余的空间