Ciao Andrea,
ti ringrazio per la risposta!
Riprendo quanto mi hai scritto ...
E' ininfluente. Dal codice che hai creato server side, puoi richiamare il valore dell'altro webcontrol così come faresti dopo un postback.
Io avevo già provato ad accedere al controllo direttamente come hai fatto tu nel tuo esempio ma ho sempre avuto come valore il primo della lista: cioè il valore selezionato quando riempio il controllo con il dataTable. Non riesco ad ottenere il valore del controllo al momento della validazione. Forse perchè non c'è ancora stato il postBack? Io pensavo di si.
Ti faccio vedere la sub server-side (scusami ma sono poco esperto di C# anche se lo capisco abbastanza):
---------------------------------------------------
Dim ComuniDT As New lpds.ComuniDataTable
Dim ComuniTA As New lpdsTableAdapters.ComuniTA
Dim Validatore As CustomValidator = CType(source, CustomValidator)
Dim BoxText As DropDownList = CType(Validatore.FindControl("ddlProvincie"), DropDownList)
Dim Prov As String = CType-(Me.CreateUserWizard1.CreateUserStep.ContentTemplateContainer.FindControl("panIndirizzo").FindControl("ddlProvincie"), DropDownList).SelectedValue
ComuniTA.FillByCap_CodProv(ComuniDT, Prov, args.Value)
If ComuniDT.Rows.Count > 0 Then
args.IsValid = True
Else
args.IsValid = False
End If
---------------------------------------------------
Dichiarazione del codice nella pagina aspx:
Per la textbox txtCap:
<asp:CustomValidator
ValidationGroup="CreateUserWizard1"
ID="CustomValidatorCap"
ControlToValidate="txtCap"
ClientValidationFunction="ValidatoreLatoClient"
runat="server"
OnServerValidate="CapValido"
ErrorMessage="Il Cap inserito non risulta della provincia selezionata."
display="None"
SetFocusOnError="true" />
<asp:TextBox MaxLength="5" ID="txtCap" runat="server"></asp:TextBox>
Per la dropDownList:
<asp:DropDownList ID="ddlProvincie" runat="server">
</asp:DropDownList>
-----------------------------------------------------
Il valore di Prov è sempre "AG" cioè il valore corrispondente alla prima riga del dataSource associato al controllo (valore: "Agrigento"), anche se in realtà viene selezionato un altra provincia.
Se tu hai il valore corretto nella dropDownList evidentemente io sbaglio qualcosa che non riesco a capire.
Se hai qualche idea ti ringrazio ...
Ciao,
Marco