代码改变世界

Silverlitht数据输入验证工具类

2011-08-26 17:55  雨林  阅读(405)  评论(2编辑  收藏  举报

提供一个工具类,用于进行Silverlitht数据输入验证。

原理:在页面提交时,对页面的输入项进行验证。

用法很简单,把工具类文件添加到你的项目中,使用时不需要在xaml页面进行绑定,直接在后台cs页面就简单的几行代码就可以。目前只能进行非空验证,和数值验证,不过添加其他验证也是很容易的。

调用示例如下:

前台xaml代码

          <StackPanel Margin="5">
<StackPanel Orientation="Horizontal" Margin="5">
<TextBlock Text="产品名: " VerticalAlignment="Center"/>
<TextBox x:Name="txtProduct" Width="200" />
</StackPanel>
<StackPanel Orientation="Horizontal" Margin="5">
<TextBlock Text="数 量: " VerticalAlignment="Center"/>
<TextBox x:Name="txtAmount" Width="200" />
</StackPanel>
<StackPanel Orientation="Horizontal" Margin="5">
<TextBlock Text="单 价: " VerticalAlignment="Center"/>
<TextBox x:Name="txtPrice" Width="200" />
</StackPanel>
<StackPanel Orientation="Horizontal" >
<Button x:Name="btBuy" Content="购 买" Margin="5" />
<Button x:Name="btReset" Content="重 置" Margin="5" />
</StackPanel>

后台cs页面代码:

//引入验证工具类所在命名空间
//using SilverlightValidationDemo(可以自己改成别的)

//
后台提交按钮事件
private void btBuy_Click(object sender, RoutedEventArgs e)
{
bool isValid = true;

if (txtProduct.Text == "")
{
txtProduct.ShowValidationError(
"请输入产品名称");
isValid
= false;
}

if (txtAmount.Text == "" || !txtAmount.Text.IsNumberValid())
{
txtAmount.ShowValidationError(
"请输入一个整数");
isValid
= false;
}

if (txtPrice.Text == "" || !txtPrice.Text.IsPriceValid())
{
txtPrice.ShowValidationError(
"最小出价8.8");
isValid
= false;
}

if (isValid)
{
HtmlPage.Window.Alert(
"产品购买成功");
ResetForm();
}
}

显示效果如下:

代码下载:

源代码下载

代码参考自jv9兄的博文http://www.cnblogs.com/jv9/archive/2010/09/27/1836394.html

我只是进行了一下简单封装,使其用起来更方便一些。