Jos*_*ose 9 wpf grid textbox word-wrap
我需要一些帮助.不知道这是否可行.我想要以下内容:
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<TextBox TextWrapping="Wrap" MinLines ="5"/>
</Grid>
Run Code Online (Sandbox Code Playgroud)
这是一个包含宽度为*的网格列内部的文本框.我希望文本框占用所有宽度(因此*),但是当用户添加文本时,我希望它在到达行尾时(可用空间)进行换行.
目前,上面将给出一个具有整个宽度的文本框,但是当输入文本时,文本框的宽度随着文本的增长而增长.
我知道我可以设置MaxWidth = ?,但是列是*的点是我不知道列的大小是多少.
我想对文本框说"不要长大,无论wpf给你带什么,不要再增加一个像素".
我认为我想要的是不可能的,因为wpf要求控件想要它有多大,当用户添加超出边界的更多文本时,它会请求更多空间并且将其宽度扩展到无穷大.
尝试将MaxWidth您TextBox的ActualWidth属性绑定到已加星标列的属性(您必须为列命名才能执行此操作).我很确定我过去做过类似的事情.
就像是:
MaxWidth={Binding ElementName=MyColumn, Path=ActualWidth}
Run Code Online (Sandbox Code Playgroud)
祝好运!