One of the controls that was added to ASP.NET 3.5 in the SP1 release was the Dynamic Validator control.
I completely missed it.
What it does is pretty cool. But it doesn’t really do what you’d think it might. Or at least not what I thought it would. “Dynamic” implies to me some kind of hook up to the database. But the Dynamic Validator control doesn’t hook to the database. At least not directly. What it does, however, is a lot more flexible.