public override Control FindControl(string id)
{
var control = base.FindControl(id);
if(control != null)
return control;
for(var container = NamingContainer; container != null; container = container.NamingContainer) {
control = container.FindControl(id);
if(control != null)
return control;
}
// NOTE: [rb] I'm not implementing ResolveControlID just yet. I prefer to use a colon (:) separated ID name to get to controls inside of a naming container
// e.g. TargetControlID="LoginView1:LoginButton" works just as well
return null;
}