Avatar billede hellfishdk Nybegynder
10. oktober 2006 - 14:25 Der er 8 kommentarer og
1 løsning

RadioButtonList med tooltip fra DB

Jeg har en RadioButtonList som bliver populated fra en DB. Men jeg vil også gerne have at hvert element i listen har sit eget tooltip med beskrivelser på 2 linier i tooltip-boxen. Beskrivelserne bliver hentet fra databasen.
Hvordan gør jeg lige det?

Jeg bruger ASP.NET 2.0 og VB.NET.

//hellfishdk
Avatar billede janus_007 Nybegynder
10. oktober 2006 - 20:14 #1
Når du siger ToolTip er det så en ALT-text? eller er det en 3.parts tooltipkomponent?
Avatar billede hellfishdk Nybegynder
10. oktober 2006 - 20:29 #2
RadioButtonList i asp.net 2.0 har en Property der hedder Tooltip. Det er den jeg vil have til at vise noget tekst taget fra DB'en.
Avatar billede janus_007 Nybegynder
12. oktober 2006 - 01:03 #3
Det er desværre ikke muligt at lave linjeskift i tooltip / alt-text, men for at få texten dynamisk ind i den ville jeg nok lave min radiobuttonlist dynamisk eller evt. sætte Tooltip på eventen DataBind - kunne det være en mulighed?
Avatar billede hellfishdk Nybegynder
12. oktober 2006 - 16:06 #4
jeg er ikke helt med... :)
RadioButtonList er dynamisk i og med den henter indhold fra DB.
Hvert element i RadioButtonList skal så vise en Tooltip med en tilhørende beskrivelse, der er forskellig fra element til element.

Håber det hjælper lidt på hvad jeg er ude efter.

For at få vist på flere linier, skal jeg åbenbart ude i noget javascript, som jeg ikke er bekendt med.
Avatar billede snepnet Nybegynder
12. oktober 2006 - 17:36 #5
Sådan her kan du få nogle tooltips på:

<asp:RadioButtonList ID="RadioButtonList1" runat="server" OnDataBound="RadioButtonList1_DataBound" >
</asp:RadioButtonList>

Og i koden:
string[] data = {"A","B","C"};

protected void Page_Load(object sender, EventArgs e)
{
    if (!IsPostBack)
    {
        RadioButtonList1.DataSource = data;
        RadioButtonList1.DataBind();
    }
}

protected void RadioButtonList1_DataBound(object sender, EventArgs e)
{
    foreach (ListItem item in this.RadioButtonList1.Items)
    {
        item.Attributes["title"] = item.Text;
    }
}

Mht til det med at få linieskift ind i dit tooltip - så tag et kig her:
http://petesguide.com/WebStandards/tests/tooltips.html

Sådan noget her går f.eks. godt i IE (hvilket det ikke burde), og skidt i FF (hvilket det også burde):

protected void RadioButtonList1_DataBound(object sender, EventArgs e)
{
    foreach (ListItem item in this.RadioButtonList1.Items)
    {
        item.Attributes["title"] = item.Text + @"
            blah
            blah";
    }
}

Der findes komponenter på nettet der giver dig bedre muligheder for at lave tooltips, eller rettere, tooltips der ikke er baseret på title-attributten i html, men løsninger der f.eks. viser en div hvor du kan skrive hvad du vil.

Mvh
Avatar billede hellfishdk Nybegynder
16. november 2006 - 14:57 #6
snepnet har først set din kommentar. Kan du lave det om til VB.NET?
Avatar billede snepnet Nybegynder
16. november 2006 - 15:38 #7
Jo - her er de oversatte blokke:

Dim data() As String = {"A","B","C"}


Protected  Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
    If Not IsPostBack Then
        RadioButtonList1.DataSource = data
        RadioButtonList1.DataBind()
    End If
End Sub

Protected  Sub RadioButtonList1_DataBound(ByVal sender As Object, ByVal e As EventArgs)
    Dim item As ListItem
    For Each item In Me.RadioButtonList1.Items
        item.Attributes("title") = item.Text
    Next
End Sub

Protected  Sub RadioButtonList1_DataBound(ByVal sender As Object, ByVal e As EventArgs)
    Dim item As ListItem
    For Each item In Me.RadioButtonList1.Items
        item.Attributes("title") = item.Text + "
            blah
            blah"
    Next
End Sub

Til en anden gang:
http://www.kamalpatel.net/ConvertCSharp2VB.aspx

Mvh
Avatar billede hellfishdk Nybegynder
16. november 2006 - 15:44 #8
ok tak for linket.

Du må gerne smide et svar, da jeg tror det er det tætteste på en løsning jeg kan få.
Avatar billede snepnet Nybegynder
16. november 2006 - 16:17 #9
Jamen det kommer her så.
Mvh
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester