Xaml Silver Light:如何在文本框中将单位设置为常量
我想在Silverlight的文本框中显示一些值,但我需要设置一个保持不变的单位值 例如:Xaml Silver Light:如何在文本框中将单位设置为常量,xaml,silverlight,Xaml,Silverlight,我想在Silverlight的文本框中显示一些值,但我需要设置一个保持不变的单位值 例如: 100 gpm 我需要更改值(100),但单位(gpm)应始终保持静态 这是我目前的装订 <TextBox Text="{Binding Path=Current.SystemDemand,Mode=TwoWay}" /> 如果在文本框上使用绑定,则可以设置绑定的格式 以下是如何在Xaml中设置格式 问题作者的方法和公认的答案的共同点是,它们将(可编辑)值和(不可编辑)单位混为一谈 为什么不
100 gpm
我需要更改值(100
),但单位(gpm
)应始终保持静态
这是我目前的装订
<TextBox Text="{Binding Path=Current.SystemDemand,Mode=TwoWay}" />
如果在文本框上使用绑定,则可以设置绑定的格式 以下是如何在Xaml中设置格式
问题作者的方法和公认的答案的共同点是,它们将(可编辑)值和(不可编辑)单位混为一谈 为什么不在
文本框
的末尾附近放置一个普通的文本块
您甚至可以使用网格
将装置显示在文本框
的“内部”
<Grid>
<TextBox Text="{Binding...StringToNumberConverter...etc}" Padding="0,0,24,0"/>
<TextBlock Text="gpm" HorizontalAlignment="Right" IsHitTestVisible="false"/>
</Grid>
您是使用绑定还是设置值directlyBinding from code behind。。Text=“{Binding Path=Current.SystemDemand,Mode=TwoWay}”我们需要添加GotFocus和LostFocus EventsOry,当我放置此Text=“{Binding Path=CurrentScenario.SystemDemand,Mode=TwoWay,StringFormat='{0}gpm'}”时,我得到了预期的错误'''''''''''''''轻微的打字错误。在`{0}gpm`前面加一个空格,或者使用反斜杠\{0}gpm
。当您以{
开头时,设计器会抱怨,对不起,我将StringFormat='/{0}gpm',我得到的输出是/12.8 gpm,一个前导斜杠。我告诉你了错误的斜杠。对不起。我用正确的斜杠更新了答案,你是对的。它完成了,但gpm仍然是可编辑的,但我只需要12.8是可编辑的,无论如何这是可行的。但我需要多一点。。