Oskar Jarczyk

Oskar Jarczyk Artificial
intelligence expert
@ Deep.BI, PhD in
Social I...

Temat: Nie mogę sobie poradzić z FormView (asp.net c#)

Dzień Dobry,

mam na stronie element FormView podłączony do źródła SqlDataSource, służy on mi do wstawiania nowych rekordów do bazy danych (działa świetnie), jednakże chciałbym, aby umożliwił również edycję wybranego elementu. Ustawiam DefaultMode na Edit, wporządku, przełącza tryb, wyświetla odpowiednie tagi z <EditItemTemplate>, ale niestety formatka wyświetla mi ostatni element z bazy danych. Chciałbym wyświetlić i wyedytować wybrany element wg id rekordu, np taki z id numer 12, nie potrafię znaleźć żadnej metody do tego : ( mimo ustawienia PageIndex, komponent nie przechodzi do innego rekordu. Ktoś pomoże ? Dzięki.

konto usunięte

Temat: Nie mogę sobie poradzić z FormView (asp.net c#)

`Piotr Sowa edytował(a) ten post dnia 12.02.12 o godzinie 15:58
Oskar Jarczyk

Oskar Jarczyk Artificial
intelligence expert
@ Deep.BI, PhD in
Social I...

Temat: Nie mogę sobie poradzić z FormView (asp.net c#)

Hmm,

nie mam takiego property Current, msdn też nie zna Current w SqlDataSource Methods, dziwne :)

http://msdn.microsoft.com/en-us/library/system.web.ui....

konto usunięte

Temat: Nie mogę sobie poradzić z FormView (asp.net c#)

`Piotr Sowa edytował(a) ten post dnia 12.02.12 o godzinie 15:58

konto usunięte

Temat: Nie mogę sobie poradzić z FormView (asp.net c#)

Na początek zaznaczę, że nie jestem specjalistą od asp.net. Wydaje mi się natomiast, że wcześniejsze wypowiedzi zawierały elementy odpowiedzi na twoje pytanie.
Otóż ani FormView, ani data source nie zawierają funkcjonalności nawigacji po rekordach. Jeden służy jako element modyfikacji aktualnie wskazywanego przez kursor elementu, drugi służy do obsługi całego źródła danych. Zazwyczaj występują w konfiguracji: Data source -> Data Grid -> FormView. Data grid umożliwia wskazanie aktualnego rekordu (selectedItem) i zawiera funkcjonalność nawigacji.

Albo dołóż grid, albo polecałbym przeszukać dostępne biblioteki w poszukiwaniu kontrolek. W silverlight'cie jest np. Dataform, który ma możliwość nawigowania po rekordach. W asp.net może znajdziesz odpowiednik, albo jakąś prostą klasę do włożenia między datasource, a formview która umożliwi ci nawigację (datalist ?). W ostateczności pozostaje odnaleźć interfejs odpowiedzialny za możliwość wybrania SelectedItem i oprogramować ten interfejs we własnej, okrojonej klasie.
Bartosz Raczek

Bartosz Raczek .NET Software
Developer

Temat: Nie mogę sobie poradzić z FormView (asp.net c#)

A może wystarczy DetailsView ?
Wspiera scenariusze edycji i wstawiania rekordów oraz ma wbudowane przechodzenie po rekordach, jeżeli się ustawi właściwość.

konto usunięte

Temat: Nie mogę sobie poradzić z FormView (asp.net c#)

Z ciekawości się dopytam: czy dobrze się domyślam, że DetailsView nie ma żadnych metod do nawigacji tylko element wizualny do nawigacji?
Bartosz Raczek

Bartosz Raczek .NET Software
Developer

Temat: Nie mogę sobie poradzić z FormView (asp.net c#)

Zależy,
Jeżeli chcesz nawigować po jakiejś własności np ID no to nie ma w dostarczonym komponencie takiej możliwości.
Natomiast jeżeli zależy Ci tylko na przechodzeniu po rekordach to można z kodu ustawić właściwość "PageIndex".

konto usunięte

Temat: Nie mogę sobie poradzić z FormView (asp.net c#)

Hmm, czyli FormView, o którym pisał Oskar powinno także działać...
Bartosz Raczek

Bartosz Raczek .NET Software
Developer

Temat: Nie mogę sobie poradzić z FormView (asp.net c#)

Masz rację nie zastanowiłem się nad tym, pomyliłem insert z update kiedyś miałem jakieś problemy z insert poprzez FormView bo chyba ten scenariusz nie jest domyślnie wspierany (ale nie pamiętam dokładnie) w tej sytuacji gdy jest już zrobiony insert no to może warto jeszcze sprawdzić event "PageIndexChanging" w tym FormView i tam ustawić odpowiedni "PageIndex", ale to raczej nie będzie miało znaczenia.
Wrzuć swój kod FormView + DataSource może tam coś znajdziemy.

Następna dyskusja:

[ C# ASP NET 4.0 ] Projekt ...




Wyślij zaproszenie do