webForumDet fria alternativet

Länk i datalist baserat på DB-träff

.NET

2 svar · 307 visningar · startad av KrpSvedberg

Medlem sedan okt. 200558 inlägg
Frågan#1

Hej!

Har en datalist på en websida som skall visa nyheter. En nyhet kan ha en länk till en extern sida, ett popup fönster, till en fil, eller ingen länk alls, alltså 4 sorters nyheter. Hur löser jag på smidigast sätt visning av dessa länkar? Länkarna skall alltså dyka upp beroende på vissa träffar från DB. Har provat att använda OnItemDataBound, men tycker det är krångligt, så lite hjälp på traven skulle uppskattas.

Hjälp mottages med öppna armar ;)

Jag använder mig av VS 2005, ASP.NET 2.0 i VB.NET.

Medlem sedan sep. 2005673 inlägg
#2

Här kommer lite pseudokod som kanske kan ge dig en liten knuff. Tyvärr kan jag inte vb men principen är nog densamma!

    public void nyhetsfix(object sender, DataListItemEventArgs e)
    {
        // kolla varje rad som innehåller en nyhet
        if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
        {
            // hämta data från databasen som anger typ av nyhet
            int nyhetstyp = Convert.ToInt32(((DataRowView)e.Item.DataItem)["kolumnnamnet"]);
            
            // utifrån nyhetstyp gör du lite olika grejjer med din hyperlink
            if (nyhetstypen = 1)
            {
                ((HyperLink)e.Item.FindControl("hyperlinkid")).NavigateUrl = "http:hitellerdit";
            }
            else if (nyhetstypen = 2)
            {
                ((HyperLink)e.Item.FindControl("hyperlinkid")).NavigateUrl = "popupjavascript";
            }

            osv... 
        }
    }
Medlem sedan okt. 200558 inlägg
#3

Helt suveränt!

Tack så hjärtligt för hjälpen. Fungerar helt strålande!

319 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
162 ms — deklarationer (db)
0 ms — hämta statistik (cache)
152 ms — hämta tråd, inlägg och bilagor (db)
164 ms — ändringar (db)