Validazione campi con due user control

venerdì 13 dicembre 2013 - 09.15
Tag Elenco Tags  C#  |  VB.NET  |  .NET 1.0  |  .NET 1.1  |  .NET 2.0  |  .NET 3.0  |  .NET 3.5  |  .NET 4.0

gaetanorusso Profilo | Junior Member

Buongiorno a tutti,
ho il seguente problema:
- ho due user control (ascx) all'interno di una pagina .aspx, la prima con delle textbox e con Validation Summary e RequiredFielValidator
il secondo user control invece contiene una command bar (dei Button) che gestisce l'inserimento o la visualizzazione degli elementi inseriti


Ora la mia domanda è questa: come faccio ad assegnare al tasto inserisci la validazione dei campi ? anche perchè se clicco su il tasto stampa ad esempi e sono all'interno dell'user controlì inserisci mi parti il controllo anke se l'utente non sta inserendo nessun elemento


ps: SPERO DI ESSERE ESPRESSO IN UN MODO COMPRENSIBILE A TUTTI

Vi ringrazio dell'aiuto
Gaetano Russo

ridaria Profilo | Expert

che ci sono due user control è chiaro, ma purtroppo non è chiaro il resto.


Potresti spiegarti meglio?


Ciao
Riccardo D'Aria

gaetanorusso Profilo | Junior Member

ahahahha bene
ricomincio:
- nel primo user control devo inserire un elemento
- nel secondo user control contiene i tasti SALVA - ELIMINA - VISUALIZZA TUTTI

ora quando sono all'interno del primo user control e quindi sto per inserire i dati, ma clicco sul tasto VISUALIZZA TUTTI
e non su SALVA mi vengono mostrati i controlli di validazione

io vorrei fare partire i controlli solo quando clicco su SALVA

Gaetano Russo

ridaria Profilo | Expert

Adesso è più chiaro.

Bene non devi far altro che associare i controlli ad un gruppo di validazione.

Proprietà ValidationGroup dei controlli di validazione e dei bottoni.

Così facendo non farai altro che definire un gruppo di validazione a cui appartengono i controlli.

a seguire un piccolo esempio di html:

<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server"
ControlToValidate="TextBox1" ErrorMessage="RequiredFieldValidator"
ValidationGroup="a"></asp:RequiredFieldValidator>

<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server"
ControlToValidate="TextBox2" ErrorMessage="RequiredFieldValidator"
ValidationGroup="a"></asp:RequiredFieldValidator>

<asp:Button ID="Button1" runat="server" Text="Salva" ValidationGroup="a" />

<asp:Button ID="Button2" runat="server" Text="VISUALIZZA TUTTI" />

come puoi vedere i controlli validator ed il bottone salva hanno la proprietà: ValidationGroup impostata su "a"

il pulsante VISUALIZZA TUTTI non è associato al gruppo di validazione "a".

Così impostati la validazione parte solo se clicchi sul pulsante Salva e non se clicchi su VISUALIZZA TUTTI .


Fammi sapere.

se tutto OK chiudi il post cliccando su accetta.

CIAO




Riccardo D'Aria

gaetanorusso Profilo | Junior Member

buongiorno Riccardo
ho appena provato il tuo esempio che funziona, ma ho un altro piccolo problema che ti descrivo subito:
-ho inserito all'interno del primo user control questo codice
///CODICE///
<asp:Label ID="lblNome" runat="server" Text="Nome "></asp:Label >
<asp:TextBox ID="txtNome" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvNome" runat="server" ControlToValidate="txtNome" Display="None" ErrorMessage="Nome" ValidationGroup="a"></asp:RequiredFieldValidator>

- Questo è il codice che ho inserito nel secondo User Control
///CODICE///
<asp:ImageButton ToolTip="Salva" ID="btnSalva" runat="server" Text="Salva" SkinID="btnSkin" meta:resourcekey="btnSalvaResource1"
ImageUrl="~/images/Image_CommandBar/save.png" OnClick="btn_Click"
CssClass="icone" Height="38px" Width="33px" ValidationGroup="a" /></a>

Allora il tasto visualizza tutti che non ha il validation group funziona :D
il tasto SALVA se inserisco il valore all'interno di txtNome funziona, mentre se non inserisco nessun valore e clicco su SALVA il messaggio di controllo a video
non viene mostrato :(


grazie mille e buona domenica
Gaetano Russo

ridaria Profilo | Expert

>buongiorno Riccardo
>ho appena provato il tuo esempio che funziona, ma ho un altro
>piccolo problema che ti descrivo subito:
>-ho inserito all'interno del primo user control questo codice
>///CODICE///
><asp:Label ID="lblNome" runat="server" Text="Nome "></asp:Label
>>
><asp:TextBox ID="txtNome" runat="server"></asp:TextBox>
><asp:RequiredFieldValidator ID="rfvNome" runat="server" ControlToValidate="txtNome"
>Display="None" ErrorMessage="Nome" ValidationGroup="a"></asp:RequiredFieldValidator>

TOGLI Display="None" dal field validator di sopra e vedrai che funziona!

CIAO

se tutto OK chiudi il post cliccando su accetta.

CIAO



Riccardo D'Aria
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2025
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5