[asp.net] ulozeni zmeny v listview

Webdesign, HTML, CSS, Flash, PHP, ASP, .NET, JavaScript. Kritika www stránek na Smetišti.

Moderátor: Moderátoři Živě.cz

Odeslat příspěvekod klukzpalmy 4. 8. 2012 01:57

Zdravim,

na strance http://www.ci-online.aspone.cz/WWWci/test.aspx

jsem do listview nacetl list tridy, ktera obsahuje property Jmeno, Poznamka a ID

Kód: Vybrat vše
private class Vysledky
    {
        public string Jmeno { get; set; }
        public string Poznamka { get; set; }
        public Int64 ID { get; set; }
    }
    protected override void OnInit(EventArgs e)
    {
        base.OnInit(e);
        lvVysledek.ItemDataBound += new EventHandler<ListViewItemEventArgs>(lvVysledek_ItemDataBound);
    }
    void lvVysledek_ItemDataBound(object sender, ListViewItemEventArgs e)
    {
        HiddenField hf = (HiddenField)e.Item.FindControl("hfID");
        HyperLink hl = (HyperLink)e.Item.FindControl("hlUpravit");
        hl.NavigateUrl = "javascript:void()";
    }
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!Page.IsPostBack)
            nactiVysledek();
    }
    private void nactiVysledek()
    {
        List<Vysledky> vysledky = new List<Vysledky>();
        vysledky.Add(new Vysledky() { Jmeno = "Petr", Poznamka = "", ID = 1 });
        vysledky.Add(new Vysledky() { Jmeno = "Pavel", Poznamka = "XX", ID = 2 });
        vysledky.Add(new Vysledky() { Jmeno = "Dalibor", Poznamka = "fds", ID = 3 });
        vysledky.Add(new Vysledky() { Jmeno = "Honza", Poznamka = "werwe", ID = 4 });
        vysledky.Add(new Vysledky() { Jmeno = "Jarda", Poznamka = "twwewe", ID = 5 });
        lvVysledek.DataSource = vysledky;
        lvVysledek.DataBind();
    }

Kód: Vybrat vše
<div>
        <table>
            <thead>
                <tr style="font-weight:bold">
                    <td><asp:Label ID="Label1" runat="server" Text="Pracovník"></asp:Label></td>
                    <td><asp:Label ID="Label2" runat="server" Text="Poznámka"></asp:Label></td>                   
                    <td><asp:Label ID="Label8" runat="server" Text="Upravit"></asp:Label></td>
                </tr>
            </thead>
            <tbody>
                <asp:ListView ID="lvVysledek" runat="server">
                     <ItemTemplate>
                        <tr  id="itemPlaceholder" runat="server">                             
                             <td><asp:Label ID="lbID" runat="server" Text='<%# Eval("Jmeno")%>'></asp:Label></td>
                             <td><asp:TextBox ID="Label14" runat="server" Text='<%# Eval("Poznamka")%>' TextMode="MultiLine"  Height="120px"></asp:TextBox></td>
                             <td><asp:HyperLink ID="hlUpravit" runat="server">Upravit</asp:HyperLink><asp:HiddenField ID="hfID" runat="server" Value='<%# Eval("ID")%>'/>
                             </td>
                        </tr>
                    </ItemTemplate>
                </asp:ListView>
            </tbody>
        </table>
    </div>

Co me zajima je, jde nejak po kliknuti na hyperlink Ulozit (nebo button, je mi to jedno) zjistit, o kterou polozku se jedna, najit jeji poznamku (ktera se da editovat) a ID a ulozit do DB?

Nevim, jestli neni vhodnejsi pouzit nejkay jiny prvek pro zobrazeni vysledku, treba repeater apod.

Diky moc za radu, tohle mi vrta hlavou uz dlouho..

Petr
klukzpalmy
Junior

Odeslat příspěvekod Vebloud 15. 8. 2012 10:39

Žít a nechat žít, ty máš svůj názor, já mám svůj názor, já ti nebudu nutit svůj, nemusím souhlasit s tvým, ale udělám vše, abys ho mohl svobodně vyjádřit.

Moderátor diskuzního fóra Živě.cz
Vebloud
Moderátor
Uživatelský avatar

Odeslat příspěvekod klukzpalmy 25. 8. 2012 11:47

Dekuji za tip, uz jsem to zapracoval a funguje to skvele, vubec jsem o techto moznoste nevedel, jsem novy to asp.net.
klukzpalmy
Junior


Kdo je online

Uživatelé procházející toto fórum: Žádní registrovaní uživatelé a 5 návštevníků