Mi trovo in una view di una multiview con all'interno un detailsview in modalità insert, sto inserendo una serie di dati in db: sull'evento inserting del datasource associato al detailview verifico alcune cose e se non passa la verifica lancio un alert e interrompo l'inserting e...
a questo punto mi aspetterei di rivedere il form con i dati che stavo inserendo prima dell'interruzione e invece scompare del tutto il form... cosa sbaglio?
Questo è il codice nell'evento inserting (ma faccio lo stesso sull'updating e ho lo stesso problema):
Ho provato anche a forzare la visualizzazione del detailview concodice:Protected Sub SqlDetail_Inserting(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.SqlDataSourceCommandEventArgs) Handles SqlDetail.Inserting 'controllo se il codice che sto inserendo è già presente in db creando un sqldatareader ... If Not rs.HasRows Then procedi = True Else almes = "ATTENZIONE esiste già un cliente con questo codice conto. Modificare il dato./n" End If 'finalize If Not procedi Then 'blocca l'inserting e lancia alert almes = "alert('" & almes & "');" Page.ClientScript.RegisterClientScriptBlock(Me.GetType(), "MyScript", almes, True) e.Cancel = True End If End Sub
DetailsView1.ChangeMode(DetailsViewMode.Insert)
messo dopo l'e.cancel = true ma niente da fare.
Ho verificato anche che non fosse cambiata la view del multiview, magari poteva essersi spostata sulla views(0) ma no, resta sulls views giusta...
Help.

Rispondi quotando