我想在Silverlight中的TextBox中显示一些值,但我需要设置一个保持不变的单位值。
示例:
height
我需要更改值(100 gpm
),但单位(100
)应始终保持静态。
这是我目前的Binding。
gpm
答案 0 :(得分:1)
如果在TextBox上使用Binding,可以设置Binding的格式。
以下是您在 Xaml
中设置格式的方法<TextBox x:Name="myTextBox" Text="{Binding Path=Current.SystemDemand, Mode=TwoWay, StringFormat='\{0} gpm'}" />
答案 1 :(得分:1)
问题作者的方法和接受的答案的共同点是它们混合了(可编辑的)值和(不可编辑的)单位。
为什么不将包含该单位的普通TextBlock
放在TextBox
的末尾附近?
您甚至可以使用Grid
让单位显示&#34;内部&#34; TextBox
。
<Grid>
<TextBox Text="{Binding...StringToNumberConverter...etc}" Padding="0,0,24,0"/>
<TextBlock Text="gpm" HorizontalAlignment="Right" IsHitTestVisible="false"/>
</Grid>