如何在XamNumericEditor(WPF)中屏蔽double(使用Exp)

时间:2013-05-05 10:16:57

标签: c# wpf double infragistics mask

我希望能够在数据网格(XamDataPresenter)内的字段中验证用户输入。

输入结果为double,格式为1.7E+3

这是XAML中的字段设置:

     <igDP:Field Name="Factor" Label="Factor" Width="50">
         <igDP:Field.Settings>
             <igDP:FieldSettings EditorStyle="{StaticResource DoubleCell}" />
         </igDP:Field.Settings>
     </igDP:Field>

这是Style(带面具):

     <Style x:Key="DoubleCell" TargetType="{x:Type igEditors:XamNumericEditor}" >
         <Setter Property="Mask" Value="{}{double}"/>
     </Style>

我不知道如何使用Exp格式将蒙版设置为双号。

1 个答案:

答案 0 :(得分:0)

一个简单解决方案的示例,不是在XAML中,而是它的工作良好(使用Double.Parse

public String Factor
{
    get { return m_Factor; }
    set 
    { 
        m_Factor = value;
        this.ValidateElement(..);
    }
}

public void ValidateElement(..)
{
        try
        {
            this.SetFieldDataError(null, ..);

            if (!string.IsNullOrEmpty(m_Factor))
            {
                m_Factor = Double.Parse(FactorInternal).ToString();
            }
        }
        catch (Exception e)
        {
            this.SetFieldDataError("some error", ..);
        }
}