我在ScrollViewer中有一个Grid(只启用了垂直滚动)。我在Grid中有一个TextBox,ColumnSpan为2,其HorizontalAlignment为Stretch。由于ScrollViewer,如果用户开始输入非常长的东西,TextBox将变得越来越宽,我想避免它,它应该只有它跨越的两列宽,而不是加宽它们。
我不确定将MaxWidth设置为常量有多好,所以我想将它绑定到两列的ActualWidths。
在列定义中:
<ColumnDefinition Width="1.3*" x:Name="grdCol1"/>
<ColumnDefinition Width="1.3*" x:Name="grdCol2"/>
TextBox:
Width="{Binding ElementName=grdCol1, Path=ActualWidth}"
问题是,如何将其绑定到grdCol1 + grdCol2的ActualWidth?或者我应该走这条路?有没有一种首选的,也许更清洁的方法呢?
答案 0 :(得分:0)
原来我的ScrollViewer出现了问题。
不工作:
<ScrollViewer
HorizontalScrollBarVisibility="Hidden"
HorizontalScrollMode="Disabled"
VerticalScrollBarVisibility="Auto"
VerticalScrollMode="Auto">
WORKING:
<ScrollViewer
HorizontalScrollBarVisibility="Disabled"
HorizontalScrollMode="Disabled"
VerticalScrollBarVisibility="Auto"
VerticalScrollMode="Auto">
你必须将HorizontalScrollBarVisibility设置为Disabled,因为Hidden不足以达到此目的。