You cannot use RequiredFieldValidator since it is only for one field. Instead use JavaScript:
<script type="text/javascript">
function AtLeastOne_ClientValidate(source, args)
{
if (document.getElementById("<%= textBox1.ClientID %>").value =="" &&
document.getElementById("<%= CheckBox1.ClientID %>").Checked == false )
{
args.IsValid = false;
}
else
{
args.IsValid = true;
}
}
</script>
and then add CustomValidator:
<asp:CustomValidator id="AtLeastOne" runat="server"
ErrorMessage="TextBox or CheckBox required"
Display="Dynamic"
OnServerValidate="AtLeastOne_ServerValidate"
ClientValidationFunction="AtLeastOne_ClientValidate" />
and this server-side code
Sub AtLeastOne_ServerValidate
If TextBox1.Text.Length = 0 AndAlso CheckBox1.Checked=False Then
MessageBox.Show("At least one of those fields is required")
TextBox1.Focus()
Exit Sub
End If
End Sub