ventana una pasar pagina otra nueva net datos como asp abrir c# asp.net validation user-controls ascx

c# - una - ¿Cómo agrego un control ASP.NET dentro de un ASCX a un RequiredFieldValidator externo mediante programación?



como pasar datos de una pagina a otra en asp.net c# (3)

Creo que la mejor manera de validar el control del usuario es tener un método público dentro de su control de usuario:

public void Validate() { reqRecipientName.Validate(); reqRecipientMail.Validate(); valRecipientMail.Validate(); reqRecipientPhone.Validate(); }

donde reqRecipientName , reqRecipientMail ... son ID de validadores (también son insice ascx). Y luego en la página dentro del método de envío, llame a controlId.Validate(); Esto funciona para mí

Tengo una lista desplegable dentro de un control de usuario (ASCX) que quiero validar desde la página en la que coloqué el ASCX, pero cuando configuro ControlToValidate en la lista desplegable, la página se queja de que puede '' t ser encontrado. Gracias por cualquier ayuda / sugerencia.


Exponga la lista desplegable con una propiedad pública en su control de usuario:

public DropDownList DropDownToValidate { get { return ddlTest; } }

A continuación, utilice la UniqueID de la lista desplegable expuesta para configurar el control para validar en la carga de la página en la que eliminó el control del usuario:

protected void Page_Load(object sender, EventArgs e) { RequiredFieldValidator1.ControlToValidate = WebUserControl1.DropDownToValidate.UniqueID; }


La única forma en que sé hacer esto es hacer esto en tu clase de control de usuario:

[ValidationProperty("Foo")] public class MyUserControl : UserControl { public string Foo { get { return(yourDropDown.SelectedValue); } } }

Y luego, en la página donde coloca el control de usuario:

<asp:RequiredFieldValidator ControlToValidate="yourUserControlName" runat="server" ErrorMessage="You are required to make a selection" />

No es exactamente lo mismo, pero esa es la única solución que yo sé.