ja zachodzące CurrentMode o FormView do trybu wstawiania stosując metodę ChangeMode w przypadku Page_Load tak:Kontrolą nie zachowując wartości po odświeżenie strony kiedy FormView ustawiony na tryb wstawiania
if(!Page.IsPostBack)
{
MyFormView.ChangeMode(FormViewMode.Insert);
}
ciągu szablon wkładki mojego Formview za I mieć kontrolę DropDownList z jego właściwością AutoPostBack ustawioną na true. Mam również kilka innych formantów DropDownList i TextBox w szablonie wstawiania.
Zawsze, gdy zmieniam wybór DropDownList i odświeżenie strony, tracę wszystkie wartości wprowadzone do elementów sterujących. Dziwne jest to, że jeśli użyję ChangeMode, aby ustawić tryb FormView do wstawienia w dowolnym momencie po początkowym załadowaniu strony, nie mam problemu. Przejrzałem kod za pomocą debuggera i wszystko wydaje się działać prawidłowo, ale jakiś czas po tym, jak mój program obsługi zdarzeń do uruchomienia DropDownList, wszystko wydaje się być resetowane.
Co się tutaj dzieje?
Aktualizacja: Zauważyłem, że mój FormView był wewnątrz znacznika div z runat = "server" i enableviewstate = "false". Po włączeniu stanu wyświetlania dla elementu div kontenera zacząłem widzieć nieco inne zachowanie. FormView nadal nie zachowuje wartości po pierwszym odświeżeniu, ale teraz kolejne posty zwrotne działają poprawnie, a wartości są zachowywane.
Wszelkie pomysły będą mile widziane.
ViewState jest włączona do kontroli Formview. – joshb