我有一个简单的对话框与SpinEdit控件thot应该使用整数和浮点值 . 它适用于整数,但它不加载浮点值 . 浮动值正确加载到我的属性,但一旦对话框打开,它显示'0,00'而不是'44,44' . 如果我的浮点值没有十进制数,它也会正确加载,所以我可以看到像'44,00'这样的值 .
我尝试过铸造到十进制但无济于事 . 唯一的区别是我的属性中的值有一个点' . '作为小数占位符,而SpinEdit显示逗号 . 从我读过的内容来看,这应该不是问题 . 这是我的SpinEdit:
XAML:
<DataTemplate DataType="{x:Type local:TInputNumericVM}">
<dxe:SpinEdit x:Name="dxSpinEdit"
Text="{Binding Value, Mode=TwoWay}"
MaskType="Numeric"
IsFloatValue="{Binding FloatValue}"
MinValue="{Binding MinValue}"
MaxValue="{Binding MaxValue}"
Mask="{Binding Mask, Mode=TwoWay}"
MaxLength="{Binding Path=InputLength}"
MaskShowPlaceHolders="{Binding ShowPlaceHolder}"
InvalidValueBehavior="WaitForValidValue"
MaskUseAsDisplayFormat="True"
AllowRoundOutOfRangeValue="True"
Increment="{Binding IncrementStep}"
/>
</DataTemplate>
使用'IsFloatVakue = true','Mask = f','MaskShowPlaceholders = True'
编辑:
我已设法通过临时解决方法显示浮点值 . 我扔掉了MaskUseAsDisplayFormat =“True”属性并使用了FormatDisplayString属性,我将值设置为“### . ##” . 我对这个解决方案不满意,但它现在有效,问题仍然存在,我将不胜感激 .
EDIT2:
我正在研究devexpress ver 16.1.6,在与我的同事协商后,他建议MaskUseAsDisplayFormat属性可以在新版本上正常工作,但我不能使用更新的版本,所以我不会检查它 .