Avatar billede pablopablo Nybegynder
20. august 2006 - 21:08 Der er 24 kommentarer og
1 løsning

Hjælp til brug af BulletedList

Hey...

Bruger VS. 2005 og roder pt. med kontrollen "BulletedList"...og dertil har jeg et par spgs..

Listen benytter hyperlinks som indhold...

1. Hvordan kan det være, at jeg ikke kan ændre tekst-farven (ForeColor)...eller dvs. det kan jeg godt, men når jeg køre projektet så er linksne stadig blå (og lilla efter jeg har klikket på dem)...har også prøvet at ændre det ved at sætte color i CSS...men det ændre heller ikke noget...? Det må da være muligt??

2. Jeg har ikke brugt det i dette tilfælde, men man kan jo bruge en xml-fil som datasource...men når jeg gør det, så virker det ikke...? skal den være udformet på en bestemt måde xml filen før at det virker...jeg har ellers taget et eksempel fra nettet...

<?xml version="1.0" encoding="utf-8" ?>
<QuickLinks>
    <QuickLink>
        <Name>Whidbey @ ASP.NET</Name>
        <Url>http://www.asp.net/Whidbey</Url>
    </QuickLink>
    <QuickLink>
        <Name>ASP.NET Dev Center</Name>
        <Url>http://msdn.microsoft.com/asp.net/</Url>
    </QuickLink>
</QuickLinks>

Når jeg bruger xml filen skriver den for hver element i xml filen:

System.Web.UI.WebControls.XmlDataSourceNodeDescriptor

Håber i kan hjælpe mig!

Mvh. PabloPablo
Avatar billede pablopablo Nybegynder
20. august 2006 - 22:42 #1
Dette svare på spg. nr. 2!

http://weblogs.asp.net/rajbk/articles/431322.aspx

(The reason is that attributes of XML elements are promoted to properties and exposed through the XmlDataSource during databinding. In our case, FirstName is an element instead of an attribute which leads to the error.)
Avatar billede snepnet Nybegynder
21. august 2006 - 20:16 #2
Bare styling ... hvis du ikke angiver noget som helst om links - fikser din browser det op så du kan se hvad du har klikket på.
Du kan bare prop styles af links i dit stylesheet.
Mvh
Avatar billede snepnet Nybegynder
21. august 2006 - 20:16 #3
(proppe styles ... )
Avatar billede pablopablo Nybegynder
21. august 2006 - 22:27 #4
øøhm...ved godt jeg ikke har noget specifikt på links i dette:

.BulletedList1
{
    color: #9fb8c9;
    font-family: 'Arial';
    text-align: left;
    font-size: 10pt;
    font-weight: bold;
    margin-left: 25px;
    margin-right: 25px;
    line-height: 1.0cm;
}

Ved ikke hvad jeg skal skrive for at elementerne i bulletedListen bliver påvirket? De tilgårs jo ikke direkte som normale hyperlinks...? like: http://www.w3schools.com/css/tryit.asp?filename=trycss_link
Avatar billede snepnet Nybegynder
21. august 2006 - 22:38 #5
Avatar billede snepnet Nybegynder
21. august 2006 - 22:39 #6
Hov - det var noget tilsvarende du linkede til.... Hvad mente du med at de ikke blev tilgået som det? - et link er et link.
Browseren er jo bedøvende ligeglad med om der er noget .net i den anden ende.
Mvh
Avatar billede pablopablo Nybegynder
21. august 2006 - 22:51 #7
Det jeg mener er, at jeg ikke ved hvor/hvordan jeg angiver kode i CSS, således at div. hyperlinks elementer bliver formateret herefter...jeg har jo ikke en masse "<a href..." links i min kode...men i stedet for kun dette:

<asp:BulletedList ID="BulletedList1" runat="server" BulletStyle="Disc" CssClass="BulletedList1"
        DisplayMode="HyperLink" Font-Bold="True" Font-Names="Arial" Font-Size="Small"
        Font-Strikeout="False" Font-Underline="False" Width="500px" ForeColor="#9FB8C9" DataTextField="Name"
        DataValueField="Url" EnableTheming="True">
    </asp:BulletedList>

i load metode i code behind klassen, har jeg en for-løkken som travesere div. filer i en given mappe og opretter links til disse og tilføjer dem bulletedlisten...like:

BulletedList1.Items.Add(new ListItem(name, url));
Avatar billede snepnet Nybegynder
21. august 2006 - 23:24 #8
Hvis du bare har et stylesheet hvor du har fortalt hvordan links skal se ud - skal de nok blive formateret derefter.

<style type="text/css">
a:Link
{
  font-family:verdana;
  font-size:30px;
}
</style>

Hvis du vil skifte style ud pr. link - kan du prøve med:
.someLinkClass
{
  font-family:verdana;
  font-size:10px;
}

Og i din kode:
ListItem item = new ListItem("GOOGLE", "http://www.google.com");
item.Attributes.Add("class", "someLinkClass");
BulletedList1.Items.Add(item);

Mvh
Avatar billede pablopablo Nybegynder
22. august 2006 - 03:31 #9
hey..har lige prøvet lidt forskelligt, at dine ideer...og er nået halvejs nu...dvs..

a:Link virker fint...a:hover og a.visited virker også fint. MEN de påvirker også min menubar! Hvilket jo ikke er meningen, da den er som den skal være!

Løsningen skulle man tro, ville så være en class at knytte hver item til...men af en eller anden grund reagerer den ikke på den farve man angiver i klassen??

som fx.

.someLinkClass
{
  color:red;
  font-family:verdana;
  font-size:10px;
}

font family og size virker fint men farven forbliver den samme - det er da lidt underligt ik...den er bare standard blå, som den plejer at være i IE...og selvom det virkede hvordan skulle man så sætte hover og visited color?
Avatar billede snepnet Nybegynder
22. august 2006 - 08:40 #10
Dit item resulterer i en <span> ... det er ikke noget der går direkte på linket. Det kan være det er derfor.
Hvis du vil have fuldstændig handson med links'ne i listen, er det smarteste nok at finder en løsning der giver dig bedre mulighed for det.
Du kan f.eks. bruge en repeater - og lægge dine hyperlinks ind i en template. Så kan du tilgå dem direkte.
Mvh
Avatar billede pablopablo Nybegynder
22. august 2006 - 13:54 #11
hm...det var da ærgeligt...jeg troede, at de havde tænkt sig om, at de lavede bulletedlisten...?-) men ok....er det noget du kan give et eks. på den repeater/template ide ...kender nemlig ikke noget til det...
Avatar billede snepnet Nybegynder
22. august 2006 - 16:42 #12
Avatar billede pablopablo Nybegynder
23. august 2006 - 03:18 #13
Hej...Jeg har med succes nu brugt Repeater kontrollen...dvs. til dynamisk at generere hyperlinks....Det sidste jeg så mangler, er at kontrollere links'ne farver mv...jeg fundet dette link...http://geekswithblogs.net/azamsharp/archive/2006/06/29/83601.aspx

Men kan sgu ikke få det til at spille...Det inderste del af min HTML ser således ud:

<asp:HyperLink ID="HyperLink11" runat="server" 
                    NavigateUrl='<%# DataBinder.Eval(Container.DataItem,"Url") %>'>
                    <%# DataBinder.Eval(Container.DataItem, "Name") %>
                </asp:HyperLink>

Eventen på Repeateren

protected void Repeater1_ItemDataBound(object sender, RepeaterItemEventArgs e)
    {
        if (e.Item.ItemType == ListItemType.Item ||e.Item.ItemType == ListItemType.AlternatingItem)
        {
            HyperLink link = e.Item.FindControl("HyperLink11") as HyperLink;

            link.Attributes.Add("onmouseover", "this.className='hover_color'");
        }
    }

CSS

.link_color{color:red;}
.hover_color{color:red;}

Håber du kan give et foreslag til hvad der kan være galt...det hele kompilere og kører uden problemer...men de skifter bare ikke farve...?-( Det er sikker meget åbenlyst for dig...? jeg er jo først lige ved at vende mig til miljøet...
Avatar billede pablopablo Nybegynder
23. august 2006 - 03:28 #14
Hey igen! Jeg fik det sørme til at virke...jeg manglede blot at tilføje:

CssClass="etCSS" til HyperLinket i HTML-delen...hvis dette ikke findes som default, kan man ikke ændre i det, hvilket jo også giver lidt mening...!

MEN...jeg kan ikke umiddelbart lure, hvordan jeg sætter farven på besøgte (visited) links i ItemDataBound metoden...kan du...??
Avatar billede pablopablo Nybegynder
24. august 2006 - 16:15 #15
Snepnet...?...pip :)
Avatar billede snepnet Nybegynder
26. august 2006 - 11:47 #16
Hej Pablo :o)
Sorry ... har ikke været online i nogle dage.
Hvordan står det til?
Mvh
Avatar billede pablopablo Nybegynder
28. august 2006 - 23:54 #17
Det eneste jeg mangler, er at finde ud af, hvordan jeg sætter farven på besøgte (visited) links i ItemDataBound metoden...u got a clue?
Avatar billede snepnet Nybegynder
29. august 2006 - 00:14 #18
A:visited{...;}
Mvh
Avatar billede snepnet Nybegynder
29. august 2006 - 00:14 #19
Hvorfor skal det gøres i itemdatabound?
Mvh
Avatar billede pablopablo Nybegynder
29. august 2006 - 01:27 #20
Det troede jeg bare var den eneste måde, idet at det jo er på hvert item som repeateren generere...men måske tager jeg fejl...det er blot én løsning som jeg fandt via google...men...kan ikke se hvordan jeg skal bruge Visited i et css sammen med repeateren ellers...?
Avatar billede snepnet Nybegynder
29. august 2006 - 07:38 #21
Har du et link til den løsning?
Mvh
Avatar billede pablopablo Nybegynder
29. august 2006 - 13:59 #22
Avatar billede pablopablo Nybegynder
30. august 2006 - 07:42 #23
got a clue?
Avatar billede pablopablo Nybegynder
31. august 2006 - 16:07 #24
hhm...forstår ikke helt, har prøvet det tidligere...men der virkede det ikke...?-/

Anyways...denne linie hjalp på det...

link.Attributes.Add("onclick", "this.className='dit_css'");

Men læg bare et svar snepnet...du viste mig vejen...:)
Avatar billede snepnet Nybegynder
03. september 2006 - 23:39 #25
Ok - kommer her.
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