This version of the VAB provides the absolute minimum required for use of the validation functionality for in-memory objects that don't depend on any external configuration.
The following blog posts elaborate on the reason this project exists and its goals:
Why XAML makes System.Configuration and Enterprise Library Configuration obsoleteWhy we need an EntLib Standalone Validation Application BlockThe included Validation.Presentation project provides the integration with WPF, which allows the use of a 100% compatible ValidationBinding that decorated the built-in Binding with validation behavior:
<Window
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
x:Class="CustomerSample.Window1"
Title="CustomerSample" Height="300" Width="300"
xmlns:l="clr-namespace:CustomerSample;assembly=CustomerSample"
xmlns:v="http://www.codeplex.com/entlibcontrib"
>
<Grid>
...
<Label Content="First Name:"/>
<TextBox Grid.Column="1" Text="{v:ValidationBinding FirstName}" TextWrapping="Wrap"/>
...
<TextBox Grid.Column="1" Grid.Row="6" Text="{v:ValidationBinding Address.USState}" TextWrapping="Wrap"/>
...
<Button Click="OnValidate" HorizontalAlignment="Left" VerticalAlignment="Top" Content="Validate" Grid.Row="7" Grid.RowSpan="2"/>
</Grid>
</Window>
This extended binding integrates seamlessly with WPF built-in validation infrastructure. In order to display validation error information, you continue to use WPF mechanisms (read more at
CodeProject or
MSDN).
The extended binding was designed to replace the built-in binding through a straight-forward find&replace on your existing XAML files.
Get the release. Some more information at
my blog post about the release.
This project is sponsored by
Clarius Labs.
