Zmagałem się z uzyskiwaniem funkcji FormViews w taki sposób, w jaki Microsoft oczekuje mnie przez około jeden dzień, i wymyślam kilka świetnych rzeczy.Jak zapobiegać odświeżeniu przez FormView wartości wprowadzonych przez użytkownika po uruchomieniu metody Insert Method?
Potrafię wychwycić wyjątek e.Exception i e.ReturnValue w ObjectDataSource.Inserting Event Handler i mogę nawet oszukać i sprawdzić inne właściwości obiektu w ObjectDataSource.ObjectDisposing, sprawdzając e.ObjectInstance ... a nawet dowiedziałem się, że obsługa wstawiania FormView działa po module obsługującym obiekty, więc jeśli pojawi się problem, nadal mam czas na zareagowanie i ustawię wartość e.KeepInInsertMode na wartość true w FormView.
Mój problem polega na tym, że wydaje się, że wartości wprowadzone przez użytkownika do formularza Wstaw są usuwane niezależnie.
Jak zapobiec wypróżnieniu formularza po jego wypaleniu Metoda wprowadzania?
(przy użyciu ASP.NET + VB)
Nie sądzę delegowania mój kod tutaj będzie naprawdę wiele dobrego i będę musiał zmodyfikować go przyciąć na poufne logiki biznesowej rzeczy ... więc jestem Na razie pomiń to.
edit:
Znalazłem tymczasowe i wprawdzie strasznie cludgy rozwiązanie (w przypadku nikt nie znajdzie prawdziwego rozwiązania problemu).
mam zmienna strona zdefiniowana jako:
Dim eInsertArgs As FormViewInsertedEventArgs
a potem wykonaj następujące czynności w moim ItemInserted obsługi
If boolInsertErrorOccurred = False Then
e.KeepInInsertMode = True
eInsertArgs = e
Else
eInsertArgs = Nothing
End If
Następnie na każdej kontroli mam coś takiego, że kontrole zdarzenie związane z wiązaniem danych:
If IsNothing(eInsertArgs) = False Then
Dim _sender As TextBox = sender
_sender.Text = eInsertArgs.Values("_FieldName")
End If
Efektem tego jest to, że ustawiam wartości WRÓĆ do przesłanych wartości PO ASP.NET łączy FormView z domyślnym (pustym) szablonem.
Proszę, pomóż mi znaleźć rozwiązanie mniej przerażające. :)
należy złożyć zmienił się z roztworu w postaci odpowiedzi. –