如何实现文本框的绑定验证?

用户名

如何实现文本框的绑定验证?

<TextBox Name="textBox1" Width="50" FontSize="15"
     Validation.ErrorTemplate="{StaticResource validationTemplate}"
     Style="{StaticResource textBoxInError}"
     Grid.Row="1" Grid.Column="1" Margin="2">
    <TextBox.Text>
        <Binding Path="Age" Source="{StaticResource ods}"
         UpdateSourceTrigger="PropertyChanged" >
            <Binding.ValidationRules>
          // What should I write here?       
            </Binding.ValidationRules>
        </Binding>
    </TextBox.Text>
</TextBox>

我应该在验证规则中写些什么?

康奈尔·玛丽安(Cornel Marian)

下面的示例显示AgeRangeRule的实现,该实现继承自ValidationRule并覆盖Validate方法。在值上调用Int32.Parse()方法以确保它不包含任何无效字符。Validate方法返回ValidationResult,该结果基于解析期间是否捕获到异常以及年龄值是否在上下限之外而指示该值是否有效。

public class AgeRangeRule : ValidationRule
{
    private int _min;
    private int _max;

    public AgeRangeRule()
    {
    }

    public int Min
    {
        get { return _min; }
        set { _min = value; }
    }

    public int Max
    {
        get { return _max; }
        set { _max = value; }
    }

    public override ValidationResult Validate(object value, CultureInfo cultureInfo)
    {
        int age = 0;

        try
        {
            if (((string)value).Length > 0)
                age = Int32.Parse((String)value);
        }
        catch (Exception e)
        {
            return new ValidationResult(false, "Illegal characters or " + e.Message);
        }

        if ((age < Min) || (age > Max))
        {
            return new ValidationResult(false,
              "Please enter an age in the range: " + Min + " - " + Max + ".");
        }
        else
        {
            return new ValidationResult(true, null);
        }
    }
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何绑定文本框的标题?

来自分类Dev

如何绑定文本框的标题?

来自分类Dev

如何使用AngularJs在两个文本框中实现双向绑定?

来自分类Dev

WPF如何创建具有验证和绑定的自定义文本框

来自分类Dev

保存前如何验证文本框

来自分类Dev

如何验证动态文本框控件

来自分类Dev

如何实时验证文本框输入

来自分类Dev

Aurelia验证未绑定到文本框组件

来自分类Dev

如何将文本框的文本与文件内容绑定?

来自分类Dev

动态文本框绑定

来自分类Dev

如何验证文本框中的文本和数字?

来自分类Dev

验证文本框输入

来自分类Dev

输入文本框验证

来自分类Dev

如何将文本框绑定到类Property

来自分类Dev

如何绑定到CaretIndex又名文本框的光标位置

来自分类Dev

如何将文本框对象绑定到ViewModel

来自分类Dev

MS Access:如何用查询绑定表格的文本框?

来自分类Dev

如何使用MVVM正确绑定文本框

来自分类Dev

如何刷新线程中的文本框绑定

来自分类Dev

从其他文本框绑定文本框

来自分类Dev

验证失败时如何使文本框边框变为红色

来自分类Dev

如何成功实施WPF文本框验证?

来自分类Dev

如何根据复选框值验证文本框

来自分类Dev

文本框验证后如何启用添加按钮?

来自分类Dev

Play框架:如何验证空白文本框

来自分类Dev

Visual Studio如何验证2个文本框

来自分类Dev

如何在Jquery的文本框中添加验证

来自分类Dev

如何在jQuery中验证文本框

来自分类Dev

如何在SmartGWT中验证仅数字文本框?