Označení a editování řádku v GridView   zodpovězená otázka

ASP.NET WebForms

Dobrý den, chci se zeptat jak by šlo udělat to, že když kliknu na nějaký řádek v tabulce, kterou mi vygenerovala komponenta GridView aby se nějak označila a poté bych měl někde nějaké tlačítko edit a smazat, kterými bych daný řádek buďto smazal nebo editoval přes FormView. V seriálu na tomto webu je popsaný asi nejjednodužší řešení, kdy do tabulky přidám dvě tlačítka a ty budu mít u každého řádku, ale jde upravit GridView aby to fungovalo jak jsem psal výše?Případně jak.Děkuji za odpověďi.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Máš tam události buňky, kterou to můžeš řídit (tuším CellEnter)

nahlásit spamnahlásit spam 0 odpovědětodpovědět

S ASP.NET začínám, takže kdybyste popsal trochu konkrétněji jak bych to měl udělat a jak by to mělo vypadat, tak bych byl moc vděčný.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

AHA, nějak jsem si nevšiml, že je to pro ASP.NET. To jso pro mne pole neoraná. Já raději PHP :-)

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Máte na mysli,aby se tlačítka pro smazání a editaci objevily až po kliknutí na příslušný řádek?

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Ne, mám na mysli aby ke každému řádku nebyla přiřazená tlačítka edit a delete, ale abych někde mimo tabulku byla tlačítka edit a delete pro všechny řádky a podle toho který řádek bych vybral, tak by se smazal nebo editoval příslušný řádek.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

GridView má přímo v sobě zabudovanou podporu pro výběr. Stačí přidat slupec CommandField, který bude obsahovat vlastnost ShowSelectButton nastavenou na "true".

Takhle to vypadá:

<asp:CommandField ShowSelectButton="True" ButtonType="Button" SelectText="Select" />

Jakmile kliknete na toto Selektovací tlačítko, odpálí se událost GridView.SelectedIndexChanging, kterou můžete zachytit pro stornování výběru a tak. Další událost v pořadí je GridView.SelectedIndex, tu upravíte tak, aby ukazovala na vybraný řádek. Nakonec se odpálí GridView.SelectedIndexChanged, kterou zpracujete pro ruční uložení všeho, co potřebujete a tak okolo. No a nakonec dodáte nějaké tlačítko smazat, které podle uložených dat z daných selektů provede vaše mazání nebo aktualizaci...

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Děkuji za odověď, chápu jak to myslíte, ale jak už jsem psal výše, s ASP.NET začínám a tak nevím jak bych to měl zapsat.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Tak v tomto případě Vám doporučím projít si seriály pana Hercega o ASP.NET jak zde, tak na http://www.mstv.cz (teda pokud jste to ještě neudělal) aby jste zjistil co a jak a vřele bych vám doporučil zainvestovat do nějaké literatury, pokud by jste se chtěl ASP.NET věnovat dál. Snad mi nikdo nenadá za reklamu, když řeknu že dobrá publikace (teda aspoň si to myslím) o ASP.NET je od zonerpress ASP.NET 3.5 a C# 2008 a myslím si, že za dosti příjemnou cenu.

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

Souhlasim s p.Bezděkem,projděte si tutoriály a investujte do nějaké literatury.Osobně doma knihu ASP.net 3.5 a C#2008 mám a jsem nadmíru spokojen,dále bych doporučil knihu Webové programování v ASP.NET 2.0-Problém, návrh, řešení od Marca Bellinasa.V první knize je spíše teorie (bez které se neobejdete),v knize druhé naopak praktické psaní webapp od počátku - obsahuje implementace disk.fór,nákup.košík,atd.

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:
Heslo:

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback