FluentValidation works with WPF/Silverlight. As Jeremy pointed out, all you have to do is to write the logic to show error messages and a bit of glue to find what rules to check when using this specific ViewModel class.
I implemented something like this for my WPF MVVM library, if you'd like to take a look - here it is: https://github.com/chester89/Modeler
There's nothing fancy, I just wrote a style for TextBox to show an error message https://github.com/chester89/Modeler/blob/master/WpfApp/MainWindow.xaml
I believe you can customize pretty much every WPF control that way.