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

时间:2011-10-11 19:34:56

标签: c# wpf silverlight

我希望我的文本框的宽度与其中文本的大小完全相符。

因此,如果其中只有一个字符,则宽度会很小。 如果其中有一个长字,它将是一个很长的宽度等等。

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

2 个答案:

答案 0 :(得分:3)

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

例如,Grid会自动拉伸其子项以填充所有可用空间。 DockPanel将对添加的最后一个孩子执行相同操作,除非LastChildFill=False

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

答案 1 :(得分:0)

这取决于TextBox所在的容器,但通常如果设置HorizontalAlignment="Left",您将会遇到此行为。

但是,如果它是(例如)DockPanelLastChildFill属性设置为true的最后一个元素,则DockPanel将为您拉伸它。